Коннекторы для интеграции

 

Коннектор с типом систем «Microsoft Navision Axapta 3.0»

 

Синхронизация реквизитов типа «Справочник»

Если при настройке выгрузки данных из системы DIRECTUM в систему Axapta 3.0 в одном из справочников синхронизируется реквизит типа «Справочник», то должны выполняться следующие условия:

·         заполнен соответствующий дополнительный параметр (см. раздел «Параметры обмена данными»);

·         настроена синхронизация справочника, на который ссылается реквизит типа «Справочник». В нем должна быть настроена синхронизация реквизита системы Axapta 3.0, имя которого указано в дополнительном параметре (см. раздел «Параметры обмена данными»).

Это нужно для того, чтобы сохранялась ссылочная целостность.

Пример:

Справочник Договоры ссылается на справочник Валюты. Реквизит Валюты справочника Договоры имеет тип «Справочник». Если синхронизируются данные справочника Договоры, то нужно обязательно синхронизировать реквизит Валюты с полем CurrencyCode таблицы «Валюты» системы Axapta 3.0.

 

Если реквизит типа «Справочник» является обязательным в системе DIRECTUM, но для него не настроена синхронизация из системы Axapta 3.0, то для его заполнения можно воспользоваться механизмом пользовательских расчетов. В расчете автозаполнения реквизитов справочника системы DIRECTUM необходимо заполнить этот реквизит.

Пример:

В справочнике Договоры системы DIRECTUM реквизит Вид является обязательным и недоступен для редактирования. Заполнить этот реквизит можно только при создании записи справочника. Данный реквизит ссылается на справочник Виды регистрируемых договорных документов. Соответствующего справочника в системе Axapta 3.0 нет. Для того чтобы синхронизировать записи справочника Договоры из системы Axapta 3.0 в систему DIRECTUM, необходимо в тексте пользовательского расчета задать заполнение  реквизита Вид следующим образом:

 

  CURRENT_KIND_CODE_NOT_IN_LIST_INDEX = -1

  KIND_CODE_FIRST_INDEX = 0

// Убедиться, что вид регистрируемого договорного документа не заполнен

  if not Assigned(Object.RegisteringContractDocKind)

// Задать вид документа

    ContractEDocKindList = CreateStringList()

// Получить список возможных видов регистрируемого договорного документа

    ContractEDocKindList = GetRegContractKindsCorrespondingToEDocKind()   

    if ContractEDocKindList.Count > CURRENT_KIND_CODE_NOT_IN_LIST_INDEX

// Заполнить вид регистрируемого договорного документа значением первого

// элемента списка

      Object.RegisteringContractDocKind = ContractEDocKindList.Values(

        KIND_CODE_FIRST_INDEX)

    endif

  endif

Недопустимо синхронизировать в систему Axapta 3.0 справочники, которые ссылаются друг на друга. Например, справочники Работники и Подразделения системы DIRECTUM ссылаются друг на друга. В справочнике Работникиесть реквизит Подразделение, а в справочнике Подразделения есть поле Руководитель, значения которого выбираются из справочника Работники. Можно настроить синхронизацию в систему Axapta 3.0 только одного из этих справочников.

 

 

 

 

 

См. также:

·         Синхронизация реквизитов типа «Признак».