Как организовать обмен данными между 1С:ЗУП 3.х и неродственной базой без снятия с поддержки?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом IT и автоматизация бизнеса
← На главную

При интеграции 1С:Зарплата и Управление Персоналом ред. 3 (1С:ЗУП 3) с неродственными или самописными конфигурациями часто возникает задача настроить регулярную выгрузку данных (например, физических лиц, сотрудников, документов приема на работу) по расписанию. При этом ключевым требованием является сохранение типовой конфигурации 1С:ЗУП на полной поддержке.

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

Вариант 1. Использование штатного универсального формата (EnterpriseData)

Самый простой подход, не требующий изменений в 1С:ЗУП 3.х, — использование встроенного механизма Библиотеки Стандартных Подсистем (БСП).

Разберем по шагам, как устроен этот подход:

  1. В 1С:ЗУП 3.х используется типовой план обмена СинхронизацияДанныхЧерезУниверсальныйФормат. В нем создается новый узел для обмена с внешней системой.
  2. Основная доработка выполняется на стороне приемника (самописной базы). В ней описывается обработка формата EnterpriseData XML/JSON или создается аналогичный узел обмена.
  3. Если типового состава выгрузки 1С:ЗУП недостаточно, правила конвертации или фиксации изменений переопределяются без снятия с поддержки — с помощью подключения внешних правил обмена/регистрации через модуль менеджера или расширение.

Данный вариант позволяет штатно регистрировать изменения справочников и документов и выполнять регулярную синхронизацию по расписанию.

Вариант 2. Обмен по правилам Конвертации Данных 2.0 (КД2) через расширение конфигурации

Если обмен необходимо реализовать на классических правилах XML (КД 2.0) с оперативной регистрацией изменений каждые 15 минут, вы можете использовать механизмы расширений (CFE) платформы «1С:Предприятие 8.3».

Проанализируем порядок реализации этого решения:

  1. Создание очереди изменений: В расширении конфигурации создаются собственный регистр сведений (например, ОчередьВыгрузкиДанных) и подписки на событие ПриЗаписи для требуемых справочников и документов.
  2. Запись изменений: При сохранении объекта в типовой ЗУП 3 подписка из расширения записывает ссылку на измененный объект в созданный регистр сведений.
  3. Выгрузка данных: В расширении регистрируется регламентное задание, которое по расписанию запускает обработку УниверсальныйОбменДаннымиXML, выгружает объекты из очереди по правилам КД2 и очищает обработанные записи из регистра.

Пример кода подписки на событие в расширении для фиксации изменений:


Процедура ЗарегистрироватьИзменениеПриЗаписи(Источник, Отказ) Экспорт
    Если Источник.ОбменДанными.Загрузка Тогда
        Возврат;
    КонецЕсли;
    
    МенеджерЗаписи = РегистрыСведений.ОчередьВыгрузкиДанных.СоздатьМенеджерЗаписи();
    МенеджерЗаписи.Объект = Источник.Ссылка;
    МенеджерЗаписи.Период = ТекущаяДата();
    МенеджерЗаписи.Записать();
КонецПроцедуры

Вариант 3. Интеграция через HTTP-сервисы или OData (REST API)

Если инициатором обмена выступает внешняя самописная система, можно отказаться от традиционных планов обмена в пользу сервисной архитектуры:

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

← На главную