Копировать ссылку на страницу Перейти в предыдущий раздел Перейти в следующий раздел

Для синхронизации документов используется вид межсистемного процесса с типом Синхронизация документа.

Если при создании записи справочника Виды межсистемных процессов заполнить поле Тип карточки, то в табличную часть записи добавляются сообщения SynchronizeDocumentChanges и SynchronizeDocumentDeletion с предзаполненными обработчиками на отправку и прием.

В коде обработчиков используются предопределенные переменные:

Process – для работы с экземпляром межсистемного процесса;
ProcessMessage – для работы с экземпляром сообщения межсистемного процесса;
Params – для работы с дополнительными параметрами обработчика.

Чтобы получить предопределенные переменные, используйте код:

 

  Process = DCIGetProcess()

  ProcessMessage = DCIGetProcessMessage()

  Params = DCIGetParams()

Описание интерфейсов, их свойств и методов см. в разделе «Объектная модель SDK».

Документы связанных систем сопоставляются по глобальному ИД. У вида межсистемного процесса есть предопределенный параметр RecordGUID, который хранит глобальный ИД изменяемого документа. При необходимости можно сопоставить документы с помощью ключевых реквизитов.

Вычисления обработчиков на удаление изменять не нужно.

В вычисления обработчиков на изменение необходимо добавить сохранение синхронизируемых реквизитов в список. Синхронизируемые данные реквизитов рекомендуется заносить в список в виде пар «Имя-Значение». Список создается функцией DCIGetObjectDictionary.

Когда список элементов сформирован, данные выгружаются и добавляются к сообщению с помощью функции DCIAttachDataToProcessMessage. В системе-приемнике парная функция DCIGetDataFromProcessMessage считывает данные из файла сообщения и преобразует их в список.

Для отправки изменившихся версий документа используется функция DCIExportDocumentVersions, для отправки подписей – функция DCIAttachSignaturesToProcessMessage.

Для совместимости необходимо использовать функции, указанные выше. Это поможет избежать доработки обработчиков при переходе на новую версию системы.

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

© Компания Directum, 2020 Сообщество пользователей Directum
.navbar > a:hover { background: #FFD73B; }