Интеграция с 1С
Технические ожидания
Примечание
Следующие технические ожидания важны для корректной работы интеграции.
Любое из нарушений таких ожиданий может привести к ошибкам или неожиданному поведению.
Для корректной работы интеграции есть ряд технических ожиданий:
- Файлы соответствуют спецификации JSON
(что важно — внутри строки кавычки и слеши экранированы, unicode-символы кроме алфавита кодированы в виде
\uXXXX); - Файлы содержат поле
Типи данные сущностей в полеЭлементы; - Каждый элемент уникально идентифицируется и всё необходимое для его идентификации содержится в том же файле,
что и сам элемент (идентификатор будет записан в колонку
cargo_uidсоответствующей таблицы); - Каждый элемент содержит поля
#typeи#value; - В поле
#valueсодержатся нужные данные элемента; - Поле
#typeсодержит тип элемента (который будет записан в колонкуcargo_typeсоответствующей таблицы) - Для элементов типа
RecordSet:- Поле
#valueсодержитFilterиRecord; Filterсодержит набор элементов для формирования уникального идентификатора;- Уникальный идентификатор берётся из значений
Value.#valueвсех элементов изFilter; - Все полученные таким образом элементы объединяются с помощью
||, что формирует уникальный идентификатор вида2018-06-06T00:00:00||9ba8c0be-9d6e-11ed-9f04-0cc47ad98ab0||e0b3d080-cafd-11e4-8131-001e6724f82a - Нарушение порядка, количества или содержимого таких полей приведёт к дублированию записей.
- Уникальный идентификатор берётся из значений
- Поле
Recordявляется массивом, но при этом должно содержать только один элемент;- Если поле
Recordсодержит множество элементов — обрабатывается только первый; - Если поле
Recordне содержит элементов (является пустым массивом) — элемент со сформированным выше уникальным идентификатором считается удалённым;
- Если поле
- Поле
- Если в элементе не найдено ожидаемое поле, то существующее значение (если оно было указано) останется прежним;
- Изменения типа поля (используемого в интеграции) приведёт к ошибке;
- Для справочника
DocumentObject.ТранспортнаяОперациямассив в полеСобытияупорядочен хронологически и порядок событий не изменяется.