Документ «Выработка НМА»

Документ фиксирует объём выработки (количество произведённой продукции / выполненных работ) по нематериальным активам, амортизация которых начисляется способом «по объёму продукции (работ)». Сам он не делает бухгалтерских проводок и не считает сумму амортизации — он лишь записывает количество в регистр накопления ВыработкаНМА. Эту накопленную выработку потом подхватывает «Закрытие месяца» и уже там начисляет амортизацию (Кт счёта амортизации НМА 2740) пропорционально фактическому объёму. Раздел «ОС и НМА», периодичность — обычно ежемесячно.

Бухгалтерия для Казахстана, ред. 3.0 · v3.0.72.1 · обновлено 2026-06-04

🎯 Что это и зачем

Для большинства НМА амортизация начисляется по времени (линейно, по сроку полезного использования). Но для некоторых активов правильнее списывать стоимость пропорционально тому, сколько ими реально «наработали» — например, лицензия на тираж, право на добычу с привязкой к объёму, технология с лимитом выпуска. Это способ начисления амортизации «по объёму продукции (работ)».

При таком способе система не может сама знать, сколько вы произвели за месяц, — это внешний факт. Документ «Выработка НМА» и нужен, чтобы ввести фактический объём выработки по каждому такому активу за период. На основании этих данных «Закрытие месяца» рассчитает амортизацию: грубо — доля выработки за период × амортизируемая стоимость.

Важно с самого начала понимать роль документа: «Выработка НМА» — это документ-регистратор данных, а не документ-проводка. Он не формирует записи Дт/Кт и даже не считает сумму амортизации внутри себя. Его единственный результат проведения — строки в регистре накопления ВыработкаНМА (актив + количество + период). Всё остальное — работа регламента закрытия месяца.

Кто работает: бухгалтер по учёту внеоборотных активов. Периодичность — как правило, ежемесячно (перед закрытием месяца), реже — ежеквартально или по факту.

💡 Если у НМА выбран любой другой способ амортизации (линейный и т.п.), документ «Выработка НМА» по нему не нужен — выработка учитывается только для способа «по объёму продукции (работ)».

🧭 Где найти в программе

Раздел «ОС и НМА» → пункт «Выработка НМА» (подсистема «Нематериальные активы»). Откроется журнал документов; новый создаём кнопкой «Создать».

📷 СКРИН 01
СКРИН 01 — раздел «ОС и НМА», открытый журнал «Выработка НМА». (AccountingKZ30 во Fresh; маршрут: ОС и НМА → Выработка НМА)
⚠️ Несостыковка [KZ30-NMA-VNMA-01]. Маршрут во Fresh восстановлен по метаданным: объект входит в подсистему ВнеоборотныеАктивы → НематериальныеАктивы (вместе с журналом ДокументыПоНМА и регистром ВыработкаНМА). В файле agent/knowledge/AccountingKZ30/navigation-map.json объекта Документ.ВыработкаНМА нет — карта навигации охватывает только блоки «Продажа / Покупка / Банк и касса / Зарплата / ЭСФ». Название раздела и пункта в конкретной базе может звучать как «ОС и НМА», «Нематериальные активы» или «Внеоборотные активы» — проверьте по левому меню своей базы. Пробел в карте зафиксирован в issues.

👤 Часть 1. Для пользователя

Проходим по шагам: от пустого документа до проведённой выработки и проверки, что данные легли в учёт. Помним: «проводок» (Дт/Кт) у этого документа нет — проверяем не отчёт «Дт/Кт», а движения по регистру ВыработкаНМА.

Урок 1. Ввод выработки за месяц

Когда: в конце учётного периода, перед «Закрытием месяца», по тем НМА, у которых амортизация считается «по объёму продукции (работ)».

Шаг 1. Создаём документ

Раздел «ОС и НМА» → «Выработка НМА» → «Создать». Документ простой: шапка и одна табличная часть. На основании других документов он не вводится — создаётся вручную.

📷 СКРИН 02
СКРИН 02 — пустая форма нового документа «Выработка НМА».
💡 Подсказка. Дату ставьте в пределах того месяца, за который вводите выработку (обычно последний день месяца). Именно по этой дате (период) выработка попадёт в регистр и будет учтена при закрытии этого месяца.

Шаг 2. Заполняем шапку

📷 СКРИН 03
СКРИН 03 — заполненная шапка (организация, подразделение).
⚠️ Важно. Поле Организация обязательно — без него документ не запишется. Структурное подразделение связано с организацией: если очистить организацию, подразделение очищается тоже, и наоборот.

Шаг 3. Заполняем табличную часть «НМА»

Кнопка «Подбор» → отмечаем в справочнике несколько нематериальных активов сразу → «Выбрать». Строки добавятся в таблицу; уже добавленные активы при подборе пропускаются (дубли не создаются).

Для каждой строки вручную вводим Количество — это и есть объём выработки за период в единицах измерения данного НМА (часы, единицы продукции, тираж и т.п.).

📷 СКРИН 04
СКРИН 04 — табличная часть «НМА» с подбором активов и колонкой «Количество».
💡 Подсказка. Можно добавлять строки и вручную (кнопкой добавления строки), выбирая актив и вводя количество. Подбор удобнее, когда активов много.
⚠️ Важно. Один и тот же нематериальный актив нельзя указывать дважды — при записи система проверит уникальность и не даст сохранить документ с дублями. Если по одному НМА за период было несколько объёмов, сложите их в одну строку.

Шаг 4. Проводим

«Провести» или «Записать и закрыть».

📷 СКРИН 05
СКРИН 05 — проведённый документ «Выработка НМА».
⚠️ Что документ НЕ делает. Кнопки «Дт/Кт» здесь ждать не стоит — бухгалтерских проводок документ не формирует и сумму амортизации не считает. Он записывает только количество выработки в регистр накопления ВыработкаНМА. Сумма амортизации (и сами проводки по счёту амортизации НМА 2740) появятся позже — при «Закрытии месяца».

Шаг 5. Проверяем, что выработка учтена

Чтобы убедиться, что данные легли в учёт, откройте движения документа по регистру ВыработкаНМА (кнопка движений документа → регистр «Выработка НМА») — там должны быть строки с активами и количеством. После закрытия месяца сумму начисленной амортизации смотрите в стандартных отчётах по НМА / по амортизации.

📷 СКРИН 06
СКРИН 06 — окно движений документа по регистру «Выработка НМА».
💡 Подсказка. Связку «выработка → амортизация» удобно проверять так: сначала проводим «Выработку НМА» за месяц, затем выполняем «Закрытие месяца» и смотрим начисленную амортизацию в отчёте — она должна соответствовать введённому объёму.

Урок 2. Корректировка ранее введённой выработки

Когда: ошиблись в объёме или нужно изменить количество за уже введённый период.

  1. Открываем нужный документ из журнала «Выработка НМА».
  2. Меняем Количество в строках (или добавляем/удаляем строки через «Подбор»).
  3. «Записать и закрыть» / «Провести».
  4. Перепроводим «Закрытие месяца» за этот период — иначе сумма амортизации не пересчитается.
⚠️ Важно. Если месяц закрыт (установлена дата запрета изменения данных), документ за этот период не даст себя перепровести, пока период не откроют. Это защита закрытых периодов — не ошибка.

Урок 3. Режим ручной корректировки

Когда: нужно записать документ, но не формировать автоматические движения (миграция данных, исправление прошлых периодов «руками»).

Поставьте флаг «Ручная корректировка» в шапке. После этого: - документ записывается без проведения — строки в регистр ВыработкаНМА автоматически не пишутся; - движения по регистру вы заполняете/правите самостоятельно.

⚠️ Важно. В обычной работе флаг «Ручная корректировка» держите снятым. Со снятым флагом документ сам сформирует выработку в регистре; с установленным — ответственность за корректность движений на вас.

🛠 Часть 2. Для программиста

Источник: реальный код релиза 3.0.72.1 (Documents/ВыработкаНМА/Ext/ObjectModule.bsl и Ext/ManagerModule.bsl), плюс разбор objects/Документ_ВыработкаНМА.md и business-logic/. Полный модуль документа короткий (~80 строк) — ниже разобраны все его обработчики.

Структура объекта

Реквизиты шапки:

Реквизит Тип Обяз. Назначение
Организация СправочникСсылка.Организации Да (ShowError) Юрлицо, в учёте которого регистрируется выработка
СтруктурноеПодразделение СправочникСсылка.ПодразделенияОрганизаций Нет Аналитика подразделения; в форме двусторонне связан с Организация
РучнаяКорректировка Булево Нет При Истина авто-проведение полностью пропускается
Ответственный СправочникСсылка.Пользователи Нет Ответственный пользователь
Автор СправочникСсылка.Пользователи Нет Намеренно НЕ заполняется автоматически (удаляется в ОбработкаЗаполнения)
Комментарий Строка Нет Произвольная пометка

Табличная часть НМА:

Реквизит Тип Назначение
НематериальныйАктив СправочникСсылка.НематериальныеАктивы Актив, по которому учитывается выработка. Дубли запрещены валидацией
Количество Число Объём выработки за период (в ЕИ данного НМА)
⚠️ Несостыковка [KZ30-NMA-VNMA-02]. Разбор в objects/Документ_ВыработкаНМА.md (раздел «Per-field reference») приписывает документу расчёт суммы списания по формуле Количество / НормативнаяВыработка × ПервоначальнаяСтоимость и движение «приход на затраты / счета амортизации». В реальном коде 3.0.72.1 этого нет: документ не считает суммы и не формирует проводок — он пишет только Количество в регистр ВыработкаНМА (см. ниже запрос ТекстЗапросаВыработкаНМА — там выгружаются лишь НематериальныйАктив, Количество, Период, Регистратор, никакой стоимости и норматива). Сумма амортизации считается позже, в «Закрытии месяца». Несостыковку отразил в issues.

Жизненный цикл проведения (обработчики ObjectModule)

Обработчик Что делает
ОбработкаЗаполнения Удаляет ключ Автор из структуры данных заполнения; заполняет шапку (ЗаполнениеДокументов.ЗаполнитьШапкуДокумента) с валютой регл. учёта
ОбработкаПроверкиЗаполнения Проверяет отсутствие дублей НематериальныйАктив в ТЧ НМА
ПередЗаписью На загрузке из обмена (ОбменДанными.Загрузка) — выход; иной логики нет
ОбработкаПроведения При РучнаяКорректировка — выход; иначе готовит параметры и формирует движения регистра ВыработкаНМА через УчетНМА
ПриКопировании Сбрасывает Дата на начало текущего дня пользователя

Обработчиков ПриЗаписи / ОбработкаУдаленияПроведения в модуле документа нет — снятие проведения отрабатывает платформенно (наборы записей регистра очищаются стандартно).

Как формируется проведение — реальный код (3.0.72.1)

Главное и определяющее: проводок документ не делает, а формирует движения ровно по одному регистру накопления — ВыработкаНМА. И даже это делегировано общему модулю УчетНМА. Источник: ObjectModule.bsl, процедура ОбработкаПроведения (полностью):

Процедура ОбработкаПроведения(Отказ, РежимПроведения)

    // ПОДГОТОВКА ПРОВЕДЕНИЯ ПО ДАННЫМ ДОКУМЕНТА
    ПроведениеСервер.ПодготовитьНаборыЗаписейКПроведению(ЭтотОбъект);

    Если РучнаяКорректировка Тогда
        Возврат;                                     // ручной режим — движения не формируем
    КонецЕсли;

    ПараметрыПроведения = Документы.ВыработкаНМА.ПодготовитьПараметрыПроведения(Ссылка, Отказ);

    Если Отказ Тогда
        Возврат;
    КонецЕсли;

    // если параметры не получены, но Отказ не взведён — просто выходим
    Если ПараметрыПроведения = Неопределено Тогда
        Возврат;
    КонецЕсли;

    // ФОРМИРОВАНИЕ ДВИЖЕНИЙ
    Если ПараметрыПроведения.ВыработкаНМАРеквизитыТаблицаНМА.Количество() <> 0 Тогда
        УчетНМА.СформироватьДвиженияВыработкаНМА(ПараметрыПроведения.ВыработкаНМАРеквизитыТаблицаНМА,
                                                Движения, Отказ);
    КонецЕсли;

КонецПроцедуры

Разбор по строкам: - ПроведениеСервер.ПодготовитьНаборыЗаписейКПроведению(ЭтотОбъект) — служебная инициализация наборов записей (общий механизм проведения конфигурации). Вызывается всегда, даже в ручном режиме. - Если РучнаяКорректировка Тогда Возврат — при ручной корректировке авто-проведение полностью пропускается: движения регистра пользователь заполняет сам. - Документы.ВыработкаНМА.ПодготовитьПараметрыПроведения(Ссылка, Отказ) — сбор данных через временные таблицы в ManagerModule (см. ниже). Возвращает структуру с таблицей ВыработкаНМАРеквизитыТаблицаНМА. - Количество() <> 0 — здесь это число строк таблицы (метод Количество() у таблицы значений), а не реквизит «Количество». То есть: если строк нет — движения не формируем (пустой документ). - УчетНМА.СформироватьДвиженияВыработкаНМА(..., Движения, Отказ) — единственное формирование движений. Конкретный состав записей регистра ВыработкаНМА инкапсулирован в общем модуле УчетНМА (в модуле документа его нет).

А вот как ManagerModule.ПодготовитьПараметрыПроведения собирает данные — итоговый запрос показывает, что в документ закладывается только количество выработки, без сумм:

Функция ТекстЗапросаВыработкаНМА(НомераТаблиц)

    НомераТаблиц.Вставить("ВыработкаНМАРеквизитыТаблицаНМА", НомераТаблиц.Количество());

    ТекстЗапроса =
    "ВЫБРАТЬ
    |   ""НМА"" КАК ИмяСписка,
    |   &СинонимНМА КАК СинонимСписка,
    |   Реквизиты.Период КАК Период,
    |   Реквизиты.Регистратор КАК Регистратор,
    |   ТаблицаНМА.НомерСтроки,
    |   ТаблицаНМА.НематериальныйАктив КАК НематериальныйАктив,
    |   ТаблицаНМА.Количество
    |ИЗ
    |   Реквизиты КАК Реквизиты
    |       ВНУТРЕННЕЕ СОЕДИНЕНИЕ ТаблицаНМА КАК ТаблицаНМА
    |       ПО (ИСТИНА)
    |
    |УПОРЯДОЧИТЬ ПО
    |   ТаблицаНМА.НомерСтроки";

    Возврат ТекстЗапроса + ОбщегоНазначенияБКВызовСервера.ТекстРазделителяЗапросовПакета();

КонецФункции

Здесь видно: соединяются реквизиты документа (Период, Регистратор) со строками ТЧ (НематериальныйАктив, Количество). Ни первоначальной стоимости, ни норматива выработки, ни суммы амортизации в выборке нет — значит документ их и не считает. Это подтверждает, что расчёт суммы амортизации выполняется не здесь, а в регламенте закрытия месяца на основании накопленной выработки.

Движения по регистрам

Регистр Тип / движение Что пишет
ВыработкаНМА Регистр накопления (остатки) / приход Период, Регистратор, НематериальныйАктив, Количество (объём выработки за период)

Бухгалтерских проводок (Типовой / Налоговый — Дт/Кт) документ НЕ формирует. Это документ-регистратор данных для последующего расчёта амортизации.

📌 Иллюстрация со сверкой по плану счетов КЗ (не движения этого документа!). Чтобы было понятно, куда в итоге приведёт накопленная выработка, — амортизацию НМА по способу «по объёму продукции» начисляет «Закрытие месяца» примерно такой проводкой: - Дт счёта затрат/расходов (7210 административные, 8410 накладные производственные, либо иной по способу отражения расходов НМА) — Кт 2740 «Амортизация нематериальных активов».

Конкретные счёт затрат и аналитика берутся из способа отражения расходов по амортизации, заданного у НМА, и из учётной политики. Сам документ «Выработка НМА» в формировании этих проводок не участвует — он лишь поставляет в регистр ВыработкаНМА объём, от которого считается доля. Российские счета (04/05) к плану счетов КЗ отношения не имеют и здесь не применяются.

Валидации (ОбработкаПроверкиЗаполнения)

Единственная явная проверка в модуле — уникальность актива в табличной части:

Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)

    УправлениеВнеоборотнымиАктивамиСервер.ПроверитьОтсутствиеДублейВТабличнойЧасти(
        ЭтотОбъект, "НМА", Новый Структура("НематериальныйАктив"), Отказ);

КонецПроцедуры

Особенность заполнения — ОбработкаЗаполнения

Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)

    ТипДанныхЗаполнения = ТипЗнч(ДанныеЗаполнения);

    Если ТипДанныхЗаполнения = Тип("Структура") Тогда
        Если ДанныеЗаполнения.Свойство("Автор") Тогда
            ДанныеЗаполнения.Удалить("Автор");
        КонецЕсли;
        ЗаполнитьЗначенияСвойств(ЭтотОбъект, ДанныеЗаполнения);
    КонецЕсли;

    ЗаполнениеДокументов.ЗаполнитьШапкуДокумента(ЭтотОбъект,
        ОбщегоНазначенияБКВызовСервераПовтИсп.ПолучитьВалютуРегламентированногоУчета());

КонецПроцедуры

Если ДанныеЗаполнения — структура, ключ Автор удаляется перед заполнением (намеренно: автор не должен подтягиваться из данных заполнения). Затем ЗаполнениеДокументов.ЗаполнитьШапкуДокумента инициализирует шапку с валютой регламентированного учёта.

Зависимости (общие модули)

💼 Партнёру / внедренцу. Три типовые ситуации у клиента:
  1. «Документ провёл, а амортизации нет / проводок нет». Это норма: «Выработка НМА» проводок не делает. Амортизация по способу «по объёму продукции» начисляется «Закрытием месяца» по накопленной выработке. Проверьте: (а) у НМА действительно выбран способ амортизации «по объёму продукции (работ)»; (б) выработка введена и проведена до закрытия месяца за тот же период; (в) закрытие месяца перепроведено после правок выработки.
  2. «Сумма амортизации не та». Документ суммы не считает — ищите причину в способе отражения расходов и параметрах НМА (амортизируемая стоимость, плановый объём), а также в УчетНМА / учётной политике, а не в этом документе.
  3. «Не даёт записать — дубль НМА». В ТЧ один и тот же актив дважды — сложите объёмы в одну строку.
🧩 Заметки для разработчика.
  1. РучнаяКорректировка = Истина → проведение пропускается (Возврат сразу после ПодготовитьНаборыЗаписейКПроведению). Движения регистра в этом режиме заполняет пользователь/код вручную.
  2. Количество() <> 0 — это число строк таблицы, а не значение реквизита «Количество». Пустой документ просто не формирует движений.
  3. Документ не считает суммы. Запросы ManagerModule (ТекстЗапросаРеквизитыДокумента, ТекстЗапросаВременныеТаблицыДокумента, ТекстЗапросаВыработкаНМА) выгружают только актив + количество + период/регистратор. Расчёт амортизации искать в УчетНМА (закрытие месяца), а не здесь.
  4. Автор намеренно вычищается из ДанныеЗаполнения — при программном создании не рассчитывайте на его автозаполнение.
  5. Создание «на основании» не предусмотрено — у объекта пусты based_on и inverse_based_on. Документ вводится только вручную.
  6. Объект входит в подсистему ВнеоборотныеАктивы → НематериальныеАктивы вместе с журналом ДокументыПоНМА и регистром ВыработкаНМА.

🔗 Связанные разделы

🆕 Что нового

Версия Изменение Тип
3.0.72.1 Первичное описание (на релизе 3.0.72.1) 🆕