Каталог решений - Обмен при помощи Библиотеки Стандартных Подсистем (БСП) конфигурации ЗУП 2.5

Обмен при помощи Библиотеки Стандартных Подсистем (БСП) конфигурации ЗУП 2.5

Обмен при помощи Библиотеки Стандартных Подсистем (БСП) конфигурации ЗУП 2.5

В наличии

Как организовать автообмен данными из базы Зарплата и Управление Персоналом 2.5? Очень просто. Кодирование нужно лишь для одной команды — всего несколько строчек кода.

Категория:

Описание

По одному из заданий мне требовалось создать автообмен между базами ЗУП 2.5 (Зарплата и Управление Персоналом)  и Документооборот, причем обмен должен выполняться ежедневно, но только измененными объектами. Создав и отладив правила обмена при помощи конфигурации КД 2.1 (Конвертация данных), я попытался создать узел обмена и настроить его типовым образом, но при обмене (при получении выгрузки в базе Документооборота) получил ряд ошибок в ЖР и стал разбираться, в чем причина. Причиной ошибок явилось несоответствие версий файлов обмена. В базе Документооборота обмены работают при помощи БСП, поэтому я решил в ЗУП также организовать обмен при помощи БСП, благо, что БСП в ЗУПе уже присутствует.

Поскольку мне пришлось разрабатывать правила обмена, то их надо было где-то хранить. Покопав код БСП в ЗУПе, я обнаружил, что можно правила обмена сохранить в макете узла обмена. Этим я и воспользовался (Рисунок 1).

 

 Узел обмена

 

Но для использования этих правил – загрузки их в нужный регистр БСП ПравилаДляОбменаДанными, пришлось создать форму списка для моего узла обмена, добавив в нее кнопку с командой: «Обновить правила»:

 

Процедура ДействияФормыЗагрузитьПравила(Кнопка)
 Узел = ЭлементыФормы.ПланОбменаСписок.ТекущаяСтрока;
 ИмяПланаОбмена = Узел.Метаданные().Имя;
 Отказ = Ложь;
 СтруктураЗаписи = Новый Структура;
 СтруктураЗаписи.Вставить("ИмяПланаОбмена", ИмяПланаОбмена);
 СтруктураЗаписи.Вставить("ВидПравил", Перечисления.ВидыПравилДляОбменаДанными.ПравилаКонвертацииОбъектов);
 СтруктураЗаписи.Вставить("ИмяМакетаПравил", "ПравилаОбмена");
 СтруктураЗаписи.Вставить("ИсточникПравил", Перечисления.ИсточникиПравилДляОбменаДанными.МакетКонфигурации);
 СтруктураЗаписи.Вставить("ИспользоватьФильтрВыборочнойРегистрацииОбъектов", Ложь);
  // получаем набор записей регистра
 НаборЗаписей = ОбменДаннымиСервер.СоздатьНаборЗаписейРегистраСведений(СтруктураЗаписи, "ПравилаДляОбменаДанными");
  // добавляем только одну запись в новый набор записей
 НоваяЗапись = НаборЗаписей.Добавить();
  // заполняем значения свойств записи из структуры
 ЗаполнитьЗначенияСвойств(НоваяЗапись, СтруктураЗаписи);
  // Загружаем правила для обмена данными в ИБ
 РегистрыСведений.ПравилаДляОбменаДанными.ЗагрузитьПравила(Отказ, НаборЗаписей[0]);
 Если Не Отказ Тогда
 НаборЗаписей.Записать();
 КонецЕсли;
КонецПроцедуры

 

Теперь остался лишь шаг – создать сценарий обмена. Он прописывается в справочнике: СценарииОбменовДанными (Рисунок 2).

 

 Настройка сценария

 

Параметры подключения настраиваются ПКМ и выбором одноименного меню.

Сами обмены можно выполнять руками: кнопка Выполнить сценарий, — или создать расписание.

has been added to your cart:
Оформление заказа