Переход со «старшей» конфигурации (1С:ERP) на «младшую» (1С:Бухгалтерия предприятия 3.0) — сценарий крайне нетипичный для экосистемы 1С. Фирма «1С» традиционно разрабатывает инструменты миграции «снизу вверх» (из БП в ERP), поэтому готового типового помощника для обратного перехода не существует. Тем не менее, на практике компании нередко принимают решение вести регламентированный учет отдельно от сложного управленческого контура ERP. Это позволяет обновлять бухгалтерию независимо, оперативно сдавать отчетность и не зависеть от тяжелых релизов ERP.
В данной статье мы подробно разберем, как наиболее эффективно организовать перенос начальных остатков из 1С:ERP в 1С:БП 3.0, проанализируем доступные инструменты, выявим ключевые методологические сложности и наметим пошаговый план действий.
Рассмотрим и оценим три основных подхода, которые чаще всего предлагают специалисты при планировании такой задачи.
Вариант 1. Свертка остатков в ERP и перенос через Конвертацию данных (КД 2.1)
Этот способ является наиболее жизнеспособным и контролируемым. Сначала мы запускаем процедуру свертки информационной базы в ERP, в результате чего получаем заполненные документы Документ.ВводОстатков по всем регистрам и счетам. Затем с помощью конфигурации «Конвертация данных 2.1» пишем правила обмена, которые переносят эти документы в аналогичные документы Документ.ВводОстатков в БП 3.0. Основное преимущество — возможность тонкой настройки маппинга данных на этапе конвертации.
Вариант 2. Использование формата EnterpriseData (КД 3.0)
Стандартный механизм синхронизации через EnterpriseData отлично подходит для регулярного обмена документами и справочниками. Однако использовать его для переноса остатков напрямую не получится. Формат EnterpriseData просто не содержит объектов для передачи документов ввода начальных остатков. Пытаться дорабатывать этот формат под разовую задачу экономически нецелесообразно.
Вариант 3. Переделка типового помощника перехода БП -> ERP «задом наперед»
Этот путь выглядит привлекательно лишь на первый взгляд. Архитектура регистров ERP в разы сложнее и шире, чем в БП 3.0. Попытка переписать код типового помощника под обратный сценарий потребует колоссальных трудозатрат. Нам придется вручную декомпозировать сложные многомерные регистры ERP в простые плоские таблицы БП 3.0, что неизбежно приведет к множеству ошибок.
Вывод: Оптимальным решением является перенос справочников и остатков через Конвертацию данных 2.1 (КД 2) в качестве разовой операции, с последующей настройкой регулярной синхронизации документов через стандартный EnterpriseData.
Главная сложность переноса кроется не в самом техническом процессе выгрузки/загрузки, а в принципиальных различиях структуры метаданных и методологии учета в ERP и БП 3.0. Проанализируем наиболее критичные узлы, которые потребуют особого внимания.
Справочник.Партнеры и регламентированный справочник Справочник.Контрагенты. В БП 3.0 существует только плоский справочник Справочник.Контрагенты. При переносе остатков по взаиморасчетам (счета 60, 62, 76) необходимо настроить правила так, чтобы остатки привязывались непосредственно к юридическим лицам (Контрагентам), корректно сопоставляя их по ИНН/КПП.Справочник.ПодразделенияОрганизаций. Без предварительно настроенной таблицы соответствия (маппинга) остатки по затратным счетам (20, 25, 26, 44) перенесутся некорректно.Рассмотрим по шагам, как подготовить базы и выполнить перенос наиболее безопасным способом.
Шаг 1. Подготовка данных в ERP
Перед началом выгрузки необходимо навести порядок в исходной базе. Настоятельно рекомендуется:
Шаг 2. Разработка правил конвертации данных
Используем конфигурацию «Конвертация данных 2.1». Мы можем написать правила с нуля, либо взять за основу готовые коммерческие правила переноса (например, с Инфостарта) и доработать их под специфику нашей учетной политики.
Рассмотрим пример алгоритма сопоставления договоров контрагентов при переносе остатков. При выгрузке остатков по взаиморасчетам нам необходимо программно находить или создавать договоры в БП 3.0. В обработчике «Перед выгрузкой» ПКО (Правила конвертации объектов) для договоров мы можем использовать следующий принцип:
// Пример концептуального алгоритма сопоставления договора в КД 2.1
Если ЗначениеЗаполнено(Источник.ОбъектРасчетов) Тогда
// Пытаемся определить договор по объекту расчетов ERP
Если ТипЗнч(Источник.ОбъектРасчетов) = Тип("ДокументСсылка.ДоговорКонтрагента") Тогда
ВыгрузитьОбъект = Источник.ОбъектРасчетов;
Иначе
// Если объект расчетов — заказ или накладная, ищем связанный договор
ВыгрузитьОбъект = Источник.ОбъектРасчетов.Договор;
КонецЕсли;
КонецЕсли;
Шаг 3. Запуск выгрузки и загрузки остатков
После настройки правил выполняем тестовую выгрузку остатков на определенную дату (например, на 31 декабря предыдущего года). Загружаем полученный файл в пустую, предварительно настроенную базу БП 3.0.
Шаг 4. Проверка и сверка данных
После успешной загрузки документов Документ.ВводОстатков в БП 3.0 необходимо запустить процедуру группового проведения документов. После проведения в обеих базах формируется отчет ОборотноСальдоваяВедомость (ОСВ). Проанализируем показатели построчно:
Шаг 5. Настройка регулярной синхронизации
Когда остатки успешно выверены и зафиксированы, переходим ко второму этапу проекта — настройке обмена документами «день в день». Для этого настраиваем типовой обмен через EnterpriseData. Поскольку остатки уже перенесены и сопоставлены по ключевым полям (ИНН, КПП, Коды номенклатуры), последующая синхронизация документов будет проходить в штатном режиме без дублирования информации.
Перенос остатков из 1С:ERP в 1С:БП 3.0 — трудоемкий процесс, требующий от программиста не только знания механизмов интеграции, но и глубокого понимания методологии бухгалтерского учета. Использование связки «разовый перенос остатков через КД 2.1» + «регулярный обмен документами через EnterpriseData» позволяет решить эту задачу с минимальными рисками для бизнеса и гарантирует стабильную работу регламентированного учета в БП 3.0.