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

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

При работе в 1С:ERP Управление предприятием пользователи часто сталкиваются с ситуацией, когда Группы финансового учета (ГФУ) номенклатуры были настроены неверно. В результате после закрытия периода обнаруживается, что материалы вместо 10 счета попали на 41, а готовая продукция учитывается некорректно. Простое изменение настроек в карточке номенклатуры или в справочнике ГФУ не меняет проводки в уже созданных документах. Это происходит из-за особенностей архитектуры ERP: счета учета фиксируются в специальной скрытой табличной части ВидыЗапасов в момент первого проведения документа.

В данной статье мы разберем, почему обычное перепроведение не помогает, и рассмотрим эффективные методы массового обновления данных, включая использование групповой обработки и программных алгоритмов.

Почему простое перепроведение документов не работает?

Проанализируем механизм работы системы. В отличие от «1С:Бухгалтерии», где счета подтягиваются напрямую из настроек при нажатии кнопки «Провести», 1С:ERP использует промежуточное звено — Виды запасов. Когда вы проводите документ поступления или реализации, программа анализирует текущие настройки ГФУ и записывает результат в скрытую таблицу документа. При повторном проведении система видит, что ВидыЗапасов уже заполнены, и не пытается их обновить, чтобы не замедлять работу базы и не нарушать партионный учет.

Чтобы изменения в справочниках вступили в силу для старых документов, нам необходимо заставить систему пересчитать эти данные. Рассмотрим, как это сделать правильно и безопасно.

Способ 1. Использование групповой обработки с произвольным кодом

Этот метод является наиболее быстрым и эффективным, если документов сотни или тысячи. Мы воспользуемся стандартной обработкой Групповое изменение реквизитов, которая доступна в меню «НСИ и администрирование» — «Обслуживание». Для пакетного выполнения алгоритмов также подойдёт консоль для массового изменения документов и выполнения кода.

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

  1. Откроем обработку Групповое изменение реквизитов.
  2. В поле «Изменять» выберем типы документов, в которых нужно обновить счета (например, Приобретение товаров и услуг, Выпуск продукции и выполнение работ, Реализация товаров и услуг).
  3. Настроим отбор по периоду или конкретной организации, чтобы не затронуть лишние данные.
  4. Перейдем в «Дополнительные параметры» и включим флажки «Показывать служебные реквизиты» и «Выполнить в транзакции». Это позволит нам работать с табличной частью Виды запасов.
  5. В некоторых версиях программы доступна кнопка «Выполнить произвольный алгоритм». Если она есть, мы можем программно очистить таблицу.

Разберем программный код, который необходимо вставить в окно алгоритма:


// Очищаем таблицу видов запасов, чтобы система переформировала её при проведении
Объект.ВидыЗапасов.Очистить();

// Записываем документ с проведением
Объект.Записать(РежимЗаписиДокумента.Проведение);

Суть этого действия в том, что при пустой таблице ВидыЗапасов типовой механизм проведения ERP поймет, что данных нет, обратится к актуальным настройкам ГФУ в карточках номенклатуры и создаст новые записи с правильными счетами учета.

Способ 2. Использование дополнительных свойств при записи

Если вы опасаетесь полностью очищать виды запасов, можно попробовать более «мягкий» программный метод. В 1С:ERP существуют служебные свойства, которые дают команду модулю проведения обновить аналитику. Рассмотрим пример кода, который можно применить в обработке:


// Устанавливаем свойство, которое заставляет систему пересчитать счета учета
Объект.ДополнительныеСвойства.Вставить("ЗаполнитьСчетаУчетаПередЗаписью", Истина);

// Записываем объект
Объект.Записать(РежимЗаписиДокумента.Проведение);

Этот метод работает не во всех релизах конфигурации, но он безопаснее, так как задействует встроенные механизмы проверки платформы.

Способ 3. Последовательная отмена и установка пометки удаления

Выясним причину, по которой иногда даже очистка не помогает — это может быть связано с жесткими блокировками партий. В таком случае поможет радикальный, но действенный метод «через отмену проведения».

Разберем алгоритм действий по шагам:

  1. Выделите список нужных документов в журнале.
  2. Выполните команду «Установить пометку удаления». Это полностью очистит все движения документа во всех регистрах (и бухгалтерских, и управленческих).
  3. Снимите пометку удаления.
  4. Проведите документы заново в хронологическом порядке.

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

Способ 4. Исправление ГФУ расчетов с контрагентами

Если проблема касается не только номенклатуры, но и счетов расчетов (например, авансы поставщикам не попадают на 60.02), нужно проверить Группы финансового учета расчетов. В отличие от товаров, счета расчетов обычно привязаны к договору или соглашению.

Проанализируем ситуацию: если вы изменили ГФУ в договоре, старые платежные поручения и накладные «не увидят» этого изменения. Для исправления расчетов выполните следующие действия:

  1. Убедитесь, что в договоре указана правильная ГФУ.
  2. Используйте обработку «Групповое изменение реквизитов» для документов Списание безналичных денежных средств или Поступление безналичных ДС.
  3. В поле ОбъектРасчетов перевыберите тот же самый договор (это инициирует обновление связей).
  4. Перепроведите документы.

Завершающий этап: Отражение в регламентированном учете

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

Рассмотрим, что нужно сделать после массовых правок:

  1. Перейдите в раздел Регламентированный учет — Отражение документов в регл. учете.
  2. Нажмите кнопку «Выполнить отражение». Система просканирует измененные документы и сформирует новые проводки по актуальным ГФУ.
  3. Обязательно запустите процедуру Закрытие месяца. Это критически важно, так как именно при закрытии месяца окончательно рассчитывается себестоимость и корректируются движения по счетам 10, 41, 43 и 90.

Совет: Чтобы убедиться в правильности выполненных действий, сформируйте Оборотно-сальдовую ведомость по счету 41 и 43 до и после манипуляций. Если все сделано верно, остатки должны «перекочевать» на нужные счета учета.

← На главную