Как проанализировать и исправить ошибки закрытия 23 счета в 1С:Бухгалтерия КОРП при наличии сторно

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет Промышленность, строительство и АПК
← На главную

Закрытие месяца в 1С:Бухгалтерия КОРП — это один из самых сложных процессов с технической точки зрения, особенно когда речь идет о вспомогательном производстве (счет 23). Ошибка «не обнаружены затраты для конкретных номенклатурных позиций» часто ставит в тупик как бухгалтеров, так и программистов. Ситуация осложняется, если в периоде присутствуют корректировки прошлых периодов или операции сторно. Разберем по шагам, почему возникает эта проблема и как ее диагностировать с помощью инструментов разработчика и стандартных отчетов.

Анализ проблемы: почему 23 счет не видит затраты?

Рассмотрим стандартную ситуацию: организация использует счет 23 для отражения услуг вспомогательного производства. Выпуск оформляется документами Поступление из переработки или Оказание производственных услуг. В процессе закрытия месяца система пытается распределить накопленные на дебете 23 счета затраты на выпущенную продукцию или оказанные услуги. Если программа выдает ошибку о том, что затраты не обнаружены, это означает, что нарушена связь в цепочке «Затрата — Выпуск — Аналитика распределения».

Проанализируем основные причины, по которым это происходит:

  1. Отсутствие прямых затрат: По конкретной номенклатурной группе или подразделению на счете 23 в текущем месяце нет дебетового оборота.
  2. Обнуление базы распределения: Если в текущем месяце было сделано сторно выпуска (например, корректировка сентябрьского документа в декабре), и сумма сторно равна или превышает объем выпуска текущего месяца, база для распределения становится нулевой.
  3. Расхождение аналитики: Затраты накоплены по одной номенклатурной группе (или подразделению), а выпуск продукции отражен по другой.

Шаг 1. Проверка аналитики через стандартные отчеты

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

Важно помнить, что в версии КОРП детализация затрат может быть глубже. Если система не находит базу, стоит проверить:

Шаг 2. Влияние сторно на расчет себестоимости

Выясним причину, связанную с корректировками. В 1С сторнирование не просто уменьшает оборот, оно влияет на математические алгоритмы распределения. Если в одном документе Поступление из переработки за декабрь содержится 25 строк выпуска, и при этом в декабре же проведено сторно аналогичных позиций за сентябрь, программа суммирует эти показатели.

Если итоговое количество или плановая стоимость по конкретной позиции (после вычета сторно) получается равной нулю, система считает, что «выпуска не было». Следовательно, распределять фактические затраты 23 счета на эту позицию не нужно. Это и приводит к ошибке «не обнаружены затраты», хотя физически в документе выпуска эти строки присутствуют.

Шаг 3. Технический анализ через менеджер временных таблиц

Для программиста решение задачи кроется в анализе временных таблиц, которые формируются при проведении документа Регламентная операция: Закрытие счетов 20, 23, 25, 26. Проанализируем структуру запроса, который использует система.

В алгоритме закрытия 23 счета ключевую роль играют две временные таблицы:

  1. Внешние движения: Здесь аккумулируются данные о корреспонденции счетов, например, Дт 90.02.1 Кт 23.
  2. Оценка вершин: Это таблица, в которой рассчитываются весовые коэффициенты для распределения затрат.

Если при левом соединении этих таблиц по идентификатору в таблице Оценка вершин стоят нули (или записи отсутствуют), то расчет фактической себестоимости по данным позициям обнуляется. Это происходит из-за правила распределения СписаниеРасходовНаУслуги.23. Когда база (плановая стоимость или объем) становится нулевой из-за сторно, идентификатор выпуска выпадает из расчета.

Чтобы увидеть это «вживую», можно воспользоваться отладчиком или консолью запросов, перехватив МенеджерЗапроса в модуле расчета себестоимости. Несмотря на то что количество временных таблиц может достигать 70 и более, поиск по именам ВТ_Выпуск или ВТ_ОценкаВершин поможет локализовать проблему.

Методические рекомендации по исправлению

Разберем способы решения, которые позволят закрыть месяц без ошибок:

Способ 1. Разнесение аналитики

Если сторно обнуляет базу распределения, попробуйте разнести выпуск и сторно по разным Номенклатурным группам. Создайте временную группу (например, «Корректировка выпуска») и укажите ее в сторнирующем документе. Это позволит основному выпуску декабря получить свою долю затрат, а сторно пройдет по отдельной ветке учета.

Способ 2. Проверка регистра «Затраты на выпуск продукции»

Проанализируйте внутренний регистр Затраты на выпуск продукции (объекты возникновения затрат). Данные туда попадают в момент проведения документов выпуска. Если сторно было сделано вручную через Операцию, введенную вручную, проверьте, заполнены ли там движения по этому регистру. Часто ручные корректировки по счетам затрат не сопровождаются записями в регистрах накопления, что «ломает» логику закрытия месяца.

Способ 3. Использование плановых цен

Проверьте настройки учетной политики. Если распределение на 23 счете идет «По плановой стоимости», убедитесь, что в строках сторно и в строках текущего выпуска указана одинаковая плановая цена. Если цены различаются, итоговый денежный остаток по выпуску может оказаться отрицательным или нулевым, что заблокирует распределение косвенных расходов.

Важный нюанс: В некоторых релизах БП КОРП при использовании документа Поступление из переработки наблюдались ошибки связки с затратами, если сторно делалось документом Корректировка поступления. В таких случаях стоит проверить последовательность документов и убедиться, что регламентная операция Корректировка стоимости номенклатуры выполняется до закрытия счетов затрат.

Резюме

Для успешного закрытия 23 счета при наличии сторно необходимо обеспечить наличие положительной базы распределения по каждой комбинации «Подразделение + Номенклатурная группа». Если сторно неизбежно обнуляет выпуск, необходимо либо корректировать аналитику, либо временно исключать такие позиции из автоматического распределения, заменяя их ручными операциями, хотя последний вариант является крайней мерой.

← На главную