Как программно и штатно сформировать проводки в 1С:ERP 2.1?

Программист 1С v8.3 (Управляемые формы) 1С:ERP Управление предприятием Бухгалтерский учет IT и автоматизация бизнеса
← На главную

При работе в 1С:ERP Управление предприятием 2.1 пользователи и разработчики часто сталкиваются с ситуацией, когда при проведении первичного документа (например, Реализация товаров и услуг) не формируются проводки в регистре бухгалтерии Хозрасчетный. Проанализируем архитектуру системы, выясним причины такого поведения и разберем способы решения данной задачи.

Особенности архитектуры подсистемы регламентированного учета в 1С:ERP

В отличие от 1С:Бухгалтерии, в 1С:ERP 2.1 проведение первичного документа по умолчанию не создает проводки в регистре бухгалтерии Хозрасчетный. Документ формирует движения только по оперативным и аналитическим регистрам накопления, а также создает запись в регистр сведений Отражение документов в регл. учете со статусом К отражению.

Это сделано для повышения производительности системы: менеджеры по продажам и кладовщики не блокируют работу бухгалтерской службы, а проведение документов происходит оперативно без лишних проверок счетов учета.

Способ 1. Использование штатного механизма отражения в регл. учете

Рассмотри штатные возможности 1С:ERP для автоматического формирования проводок без написания сложного кода:

  1. Рабочее место регламентированного учета и процедура «Закрытие месяца»: В рабочем месте регламентированного учета вызовем процедуру отражения документов. При выполнении закрытия месяца система автоматически обрабатывает все документы в статусе К отражению и формирует проводки по правилам настройки счетов учета.
  2. Настройка автоматического фонового задания: Для регулярного создания проводок в автоматическом режиме настроим регламентное задание Отражение документов в регламентированном учете. Оно запускается по заданному расписанию (например, каждые 10–15 минут) и формирует проводки в фоновом режиме без участия пользователей.

Способ 2. Программный вызов подсистемы отражения проводок

Разберем ситуацию, когда проводки необходимо сформировать программно сразу после проведения документа или с помощью внешней обработки. Создавать записи напрямую в РегистрБухгалтерии.Хозрасчетный не рекомендуется: при повторном перепроведении документа или перезакрытии месяца типовой механизм затрет ручные изменения.

Правильный подход — использование процедур общего модуля ОтражениеДокументовВРеглУчетеСервер. Посмотрим на пример вызова метода для обработки массива документов:


МассивДокументов = Новый Массив;
МассивДокументов.Добавить(СсылкаНаДокумент);

// Программный вызов отражения документов в регламентированном учете
ОтражениеДокументовВРеглУчетеСервер.ОтразитьДокументы(МассивДокументов);

Для моментального формирования проводок при проведении конкретного документа можно использовать подписку на событие или расширение, выгружая обработку отражения на сервер сразу после проведения документа.

Ограничения и важные условия при отражении документов

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

  1. Настройка счетов учета (ГФУ): Если для номенклатуры, контрагентов или банковских счетов не заданы Группы финансового учета (ГФУ) или правила отражения доходов/расходов, документ перейдет в статус Требуется настройка счетов, и проводки созданы не будут.
  2. Отложенное списание себестоимости: Проводка по списанию себестоимости (дебет 90.02) может создаваться не полностью в момент первичного отражения, если в компании применяется средневзвешенная себестоимость за месяц. Окончательные суммы формируются только после выполнения регламентной операции Закрытие месяца.
  3. Дата запрета изменения: Если период закрыт датой запрета изменения для регламентированного учета, программный вызов отражения документов прошлых периодов вернет ошибку или проигнорирует эти документы.
← На главную