При работе в 1С:ERP Управление предприятием пользователи часто сталкиваются с ситуацией, когда Группы финансового учета (ГФУ) номенклатуры были настроены неверно. В результате после закрытия периода обнаруживается, что материалы вместо 10 счета попали на 41, а готовая продукция учитывается некорректно. Простое изменение настроек в карточке номенклатуры или в справочнике ГФУ не меняет проводки в уже созданных документах. Это происходит из-за особенностей архитектуры ERP: счета учета фиксируются в специальной скрытой табличной части ВидыЗапасов в момент первого проведения документа.
В данной статье мы разберем, почему обычное перепроведение не помогает, и рассмотрим эффективные методы массового обновления данных, включая использование групповой обработки и программных алгоритмов.
Проанализируем механизм работы системы. В отличие от «1С:Бухгалтерии», где счета подтягиваются напрямую из настроек при нажатии кнопки «Провести», 1С:ERP использует промежуточное звено — Виды запасов. Когда вы проводите документ поступления или реализации, программа анализирует текущие настройки ГФУ и записывает результат в скрытую таблицу документа. При повторном проведении система видит, что ВидыЗапасов уже заполнены, и не пытается их обновить, чтобы не замедлять работу базы и не нарушать партионный учет.
Чтобы изменения в справочниках вступили в силу для старых документов, нам необходимо заставить систему пересчитать эти данные. Рассмотрим, как это сделать правильно и безопасно.
Этот метод является наиболее быстрым и эффективным, если документов сотни или тысячи. Мы воспользуемся стандартной обработкой Групповое изменение реквизитов, которая доступна в меню «НСИ и администрирование» — «Обслуживание». Для пакетного выполнения алгоритмов также подойдёт консоль для массового изменения документов и выполнения кода.
Важно: Перед выполнением этих действий обязательно создайте резервную копию базы данных! Для автоматического создания архивов перед запуском массовых изменений удобно настроить программу для автоматического резервного копирования и тестирования баз 1С.
Групповое изменение реквизитов.Приобретение товаров и услуг, Выпуск продукции и выполнение работ, Реализация товаров и услуг).Виды запасов.Разберем программный код, который необходимо вставить в окно алгоритма:
// Очищаем таблицу видов запасов, чтобы система переформировала её при проведении
Объект.ВидыЗапасов.Очистить();
// Записываем документ с проведением
Объект.Записать(РежимЗаписиДокумента.Проведение);
Суть этого действия в том, что при пустой таблице ВидыЗапасов типовой механизм проведения ERP поймет, что данных нет, обратится к актуальным настройкам ГФУ в карточках номенклатуры и создаст новые записи с правильными счетами учета.
Если вы опасаетесь полностью очищать виды запасов, можно попробовать более «мягкий» программный метод. В 1С:ERP существуют служебные свойства, которые дают команду модулю проведения обновить аналитику. Рассмотрим пример кода, который можно применить в обработке:
// Устанавливаем свойство, которое заставляет систему пересчитать счета учета
Объект.ДополнительныеСвойства.Вставить("ЗаполнитьСчетаУчетаПередЗаписью", Истина);
// Записываем объект
Объект.Записать(РежимЗаписиДокумента.Проведение);
Этот метод работает не во всех релизах конфигурации, но он безопаснее, так как задействует встроенные механизмы проверки платформы.
Выясним причину, по которой иногда даже очистка не помогает — это может быть связано с жесткими блокировками партий. В таком случае поможет радикальный, но действенный метод «через отмену проведения».
Разберем алгоритм действий по шагам:
Внимание: При использовании этого метода важно соблюдать строгую последовательность: сначала обрабатываются документы поступления, затем перемещения, и в конце — выпуски и реализации. В противном случае вы получите ошибки о нехватке остатков на складах.
Если проблема касается не только номенклатуры, но и счетов расчетов (например, авансы поставщикам не попадают на 60.02), нужно проверить Группы финансового учета расчетов. В отличие от товаров, счета расчетов обычно привязаны к договору или соглашению.
Проанализируем ситуацию: если вы изменили ГФУ в договоре, старые платежные поручения и накладные «не увидят» этого изменения. Для исправления расчетов выполните следующие действия:
Списание безналичных денежных средств или Поступление безналичных ДС.ОбъектРасчетов перевыберите тот же самый договор (это инициирует обновление связей).После того как вы изменили документы любым из вышеперечисленных способов, проводки в бухгалтерском учете не изменятся мгновенно. В 1С:ERP используется механизм отложенного формирования проводок. Для постановки документов в очередь на обновление проводок можно использовать обработку для принудительного повторного отражения документов в регламентированном учете.
Рассмотрим, что нужно сделать после массовых правок:
Совет: Чтобы убедиться в правильности выполненных действий, сформируйте Оборотно-сальдовую ведомость по счету 41 и 43 до и после манипуляций. Если все сделано верно, остатки должны «перекочевать» на нужные счета учета.