При переходе на современные версии зарплатных конфигураций, такие как ЗУП КОРП 3.1, многие организации сталкиваются с проблемой интеграции данных в старые комплексные системы, например, УПП 1.3. Часто возникает закономерный вопрос: существует ли штатный механизм обмена? Сразу ответим: прямого «коробочного» решения от фирмы «1С» для этой связки не существует, так как это принципиально разные архитектуры.
ЗУП 3.1 базируется на современных механизмах платформы 8.3, активно использует управляемые формы и новую структуру регистров накопления. УПП 1.3, напротив, является решением предыдущего поколения. Разработчики не предусмотрели механизмов прямой синхронизации между ними. Следовательно, нам с вами предстоит разработать собственный инструмент переноса данных.
Наиболее классическим способом решения является создание правил обмена с помощью конфигурации Конвертация данных 2.0. Разберем этот путь по шагам:
ОтражениеЗарплатыВБухучете.Подразделения или СтатьиФинансирования) в этих программах различается, поэтому потребуется создание правил конвертации значений (маппинг).Для многих разработчиков более удобным и быстрым способом является написание внешней обработки, которая подключается к базе ЗУП 3.1 через COM-соединение. Это позволяет считывать данные напрямую из регистров накопления, минуя промежуточные файлы XML.
Рассмотрим примерный алгоритм работы такой обработки:
// Пример подключения к ЗУП 3.1 из УПП 1.3
COMОбъект = Новый COMОбъект("V83.COMConnector");
БазаЗУП = COMОбъект.Connect("Srvr=ИмяСервера;Ref=ИмяБазы;Usr=Пользователь;Pwd=Пароль");
// Выборка данных из регистра
Запрос = БазаЗУП.NewObject("Запрос");
Запрос.Текст = "ВЫБРАТЬ ... ИЗ РегистрНакопления.НачисленияУдержанияПоСотрудникам КАК Данные";
Результат = Запрос.Выполнить().Выбрать();
Пока Результат.Следующий() Цикл
// Логика создания документов в УПП
Док = Документы.ОтражениеЗарплатыВРеглУчете.СоздатьДокумент();
// Заполнение реквизитов...
Док.Записать();
КонецЦикла;
Если вы хотите максимально использовать типовые механизмы, рассмотрите вариант «буферной» базы. ЗУП 3.1 имеет типовой обмен с 1С:Бухгалтерией 3.0. Если ваша организация использует БП 3.0 в качестве промежуточного звена, можно настроить обмен «ЗУП -> БП», а затем доработать выгрузку из БП -> УПП. Этот путь сложнее в настройке, но более предсказуем при обновлениях конфигурации ЗУП.
При проектировании обмена обязательно уделите внимание следующим моментам:
В заключение стоит отметить, что написание собственной обработки — это не просто задача на один вечер. Однако, основываясь на опыте коллег, можно справиться с этой задачей за 1-2 недели, если четко определить структуру выгружаемых данных и правила сопоставления объектов метаданных.