Доработка объектов конфигурации, участвующих в обмене
Первое, что нам следует сделать – внести изменения в модули всех объектов, участвующих в обмене (в нашем случае это будут документы, справочники и планы видов характеристик). Эти изменения будут заключаться в том, что теперь при формировании номера документа и кода справочника или плана видов характеристик будет использоваться значение константы "ПрефиксНумерации" для обеспечения уникальности номеров и кодов в каждой из наших баз.
Функцию формирования префикса номера мы вынесем в общий модуль, поскольку не исключена возможность того, что в будущем алгоритм формирования префикса документов может быть изменен. [401]
Функцию мы разместим в общем модуле "ОбменДанными", выглядеть она будет следующим образом:
Функция ПопучитьПрефиксНомера() Экспорт
Возврат Константы.ПрефиксНумерации.Получить();
КонецФункции
Как вы видите, эта функция просто возвращает значение константы "ПрефиксНумерации".
Теперь доработаем справочник "Клиенты". В модуль объекта добавим следующий обработчик события "ПриУстановкеНовогоКода":
Процедура ПриУстановкеНовогоКода(СтандартнаяОбработка, Префикс)
Префикс = ПопучитьПрефиксНомера();
КонецПроцедуры
Событие "При установке нового кода" возникает в момент, когда выполняется установка нового кода элемента справочника. Вторым параметром вызова обработчика передается префикс, который будет использоваться системой для генерации кода. В обработчике события мы устанавливаем его равным значению константы "ПрефиксНумерации".
Такие же обработчики нужно будет добавить во все справочники и планы видов характеристик, участвующие в обмене. После этого у всех справочников и планов видов характеристик, участвующих в обмене, нужно будет изменить тип кода на Строка и увеличить длину кода до 7 символов.
Теперь займемся доработкой документов. В модуль документа "ПриходнаяНакладная" добавим обработчик события "ПриУстановкеНовогоНомера":
Префикс = ПопучитьПрефиксНомера();
КонецПроцедуры [402]
На этом подготовительная работа с существующими объектами конфигурации завершена, и мы можем перейти к созданию процедур обмена данными.