При настройке совместной работы программ «1С:Бухгалтерия предприятия» (БП) и «1С:Зарплата и управление персоналом» (ЗУП) технические специалисты часто сталкиваются со следующей проблемой: при попытке запустить стандартную синхронизацию для переноса документов из БП в новую чистую базу ЗУП объекты просто не регистрируются к отправке. Изменение даты начала обмена, ручная регистрация изменений и перезапуск процесса не приносят результатов.
В этой статье мы подробно разберем, почему возникает данная проблема, проанализируем архитектуру обмена между этими конфигурациями и рассмотрим пошаговый алгоритм правильной миграции данных без использования механизмов регулярной синхронизации.
Для того чтобы понять, почему объекты игнорируют планы обмена, нам необходимо обратиться к архитектуре совместной работы этих двух конфигураций. Нам важно усвоить одно ключевое правило: типовая синхронизация между ЗУП и БП является строго асимметричной.
Разберем подробнее, как именно распределяются потоки данных в стандартном сценарии:
ОтражениеЗарплатыВБухучете, НачислениеОценочныхОбязательствПоОтпускам, ОтражениеУдержанногоНДФЛ, а также платежные ведомости.Организации, БанковскиеСчета) и контрагентах, необходимых для перечисления удержаний. Никакие расчетные или кадровые документы (например, начисления зарплаты, приемы на работу, больничные листы) из БП в ЗУП в рамках синхронизации передаваться не должны.Поскольку в плане обмена на стороне БП отсутствуют правила регистрации изменений для документов начисления и кадровых приказов, система логично игнорирует попытки их зарегистрировать. Даже если мы попытаемся принудительно зарегистрировать объекты к обмену с помощью программного кода, правила конвертации просто не смогут их обработать.
Проанализируем пример программной регистрации, которая в данном случае окажется бесполезной:
// Пример принудительной регистрации, которая не сработает для обмена кадровыми документами
ПланОбменаСсылка = ПланыОбмена.СинхронизацияДанныхЧерезУниверсальныйФормат.НайтиПоКоду("ЗУП");
Если Не ПланОбменаСсылка.Пустая() Тогда
Выборка = Документы.ПриемНаРаботу.Выбрать();
Пока Выборка.Следующий() Цикл
// Документ зарегистрируется в таблице изменений, но не выгрузится
// так как в правилах обмена БП -> ЗУП для него нет описания конвертации
ПланыОбмена.ЗарегистрироватьИзменения(ПланОбменаСсылка, Выборка.Ссылка);
КонецЦикла;
КонецЕсли;
Что же делать, если перед нами стоит задача перенести всю накопленную историю учета из БП в чистую базу ЗУП? Для решения этой задачи используется специализированный инструмент — Помощник перехода.
Для корректного переноса данных нам потребуется встроенный инструмент первоначальной настройки. Выполним этот процесс по шагам.
Прежде чем запускать перенос, необходимо провести «гигиену» исходной базы «1С:Бухгалтерия»:
ФизическиеЛица и Сотрудники. Наличие дубликатов приведет к серьезным ошибкам при расчете налогов и взносов в новой базе ЗУП.Рассмотрим, как запустить процедуру миграции в ЗУП:
Помощник перехода на ЗУП 3 через меню «Функции для технического специалиста»).Система предложит нам два варианта подключения к базе-источнику:
После завершения работы Помощника перехода, в ЗУП будут созданы специальные документы. Проанализируем, какие именно данные перенеслись:
ПереносДанных. Они заменяют собой реальные документы прошлых периодов и служат основанием для построения отчетов.Посмотрим, какие параметры обязательно должен проверить бухгалтер и администратор после завершения переноса данных:
Только после того, как все начальные остатки выверены, можно приступать к настройке регулярной синхронизации между ЗУП и БП для отправки результатов ежемесячного расчета зарплаты обратно в бухгалтерию.