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

