<< Click to Display Table of Contents >> Интеграция с внешними системами > Запросы к сервису интеграции Требования к значениям параметров функций и свойств сущностей |
В теле HTTP-запросов передаются значения параметров при обращении к функциям и значения свойств при создании и изменении сущностей. К формату значений предъявляется ряд требований.
Общие требования
•для имен параметров и свойств важен регистр, поэтому проверьте, что они написаны также, как в метаданных. Порядок следования параметров и свойств не важен;
•если значение одного из параметров или свойств пустое, то в запросе укажите null. В этом случае также важен регистр, поэтому Null использовать нельзя;
•проверьте, что значения параметров и свойств передаются в кодировке UTF-8.
Требования к значениям параметров функций
Тип |
Требования |
Пример |
---|---|---|
long long? List<long> List <long?> |
Значение передается без кавычек |
“longValue”: -10 “listLong”: [-10, 3333, 87] |
short short? List<short> List<short?> |
Значение передается без кавычек |
“shortValue”: 32767 “listShort”: [0, 3, 7] |
Guid Guid? List<Guid> List<Guid?> |
Формат значения: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx Регистр не важен |
"guidValue": "f3eb4c2e-c954-4277-88c1-0e536364598b" |
double double? List<double> List<double?> |
Разделителем должна быть точка, запятая недопустима. Значение передается без кавычек |
“doubleValue": 3452.3, "listDouble": [34523, null, 545.456] |
int int?, List<int> List<int?> |
Значение передается без кавычек |
"intValue": -34, “listInt”: [32, 4, 56] |
bool bool? List<bool> List<bool?> |
Важен регистр. Значение передается без кавычек |
“BoolValue”: true, “listBool”: [true, false, null] |
decimal decimal?, List<decimal> List<decimal?> |
Разделителем должна быть точка, запятая недопустима. Значение передается без кавычек |
“decimalValue”: 1.5E6m “listDecimal”: [1.5E6m, 2.1m] |
string List<string> |
Если в строке есть символы " “ « », экранируйте их с помощью символа \. Нельзя использовать в строках символы / \ ? + |
Чтобы передать строку «Проверка документа «Итоги года» выполнена секретарем», используйте параметр: “stringValue”: “Проверка документа \«Итоги года\» выполнена секретарем” |
DateTime DateTime? List<DateTime> List<DateTime?> |
Подробнее см. особенности при работе с датами |
“dateValue”: “2020-07-24T16:47:37Z” |
Бинарные данные |
Можно передавать в виде строки Base64 или массива байтов byte[]. Можно использовать только в POST-запросах. См. также ограничения на передачу бинарных данных |
“byteValue”: "MIIKnDCCCgagAwIBAgI HBy033m1WFDAMBggqhQMHAQEDAw yMVkwVwYDVQQLHlAEHgRCBDQ…” |
Структуры |
Структуры могут содержать простые типы данных из модели EDM (модели данных с использованием сущностей), а также типы Sungero.Core.Enumeration и Sungero.Core.Enumeration?. Подробнее о модели EDM см. в документации Microsoft статью «EDM (модель данных с использованием сущностей): примитивные типы данных». Можно использовать только в POST-запросах |
“structureValue”: { “name”: “Name”, “created” : “2020-07-24T16:47:37Z” } |
Требования к значениям свойств сущностей
ВАЖНО. Нельзя использовать свойства с именем System и свойства, имена которых заканчиваются на Value. В этом случае интеграция между внешней системой и Directum RX не будет работать.
Тип |
Требования |
Пример |
---|---|---|
Перечисление |
В среде разработки у значений свойства-перечисления есть имя и отображаемое имя. Чтобы заполнить или изменить свойство, нужно передать его имя |
"Status":"Active" |
Ссылка |
Чтобы заполнить или изменить свойство-ссылку, нужно, чтобы объект, на который идет ссылка, уже существовал в системе. Для передачи значения используется синтаксис OData или упрощенный синтаксис |
"LeadingDocument@odata.bind" : "Author": { "Id": 34 } |
Коллекция |
Свойство-коллекция заполняется и изменяется с помощью отдельного HTTP-запроса. Требования к заполнению дочерних свойств такие же, как к обычным свойствам |
https://DirectumRXServer.com/ { “Number”:2, "Note": "Версия для рецензирования", "AssociatedApplication": {"Id": 1} } |
Дата |
Подробнее см. особенности при работе с датами |
“Modified”: “2020-07-24T16:47:37Z” |
Логическое |
Важен регистр. Значение передается без кавычек |
“IsReturnRequired”: true |
Вещественное |
Разделителем должна быть точка, запятая недопустима. Значение передается без кавычек |
“Balance”: 52.3 |
Целое |
Значение передается без кавычек |
“LastVersionSignatureType”: 1 |
Строка Текст |
Если в строке есть символы " “ « », экранируйте их с помощью символа \. Нельзя использовать в строках символы / \ ? + |
"Note": "Версия для рецензирования", “Location”: "Архив" |
Бинарные данные Картинка Бинарные данные в хранилище |
Можно передавать в виде строки Base64 или массива байтов byte[]. См. также ограничения на передачу бинарных данных и изменение свойства типа «Бинарные данные в хранилище», «Бинарные данные» и «Картинка» |
"Value": "VGVzdFN0cmluZzMzMw==..." |
Особенности при работе с датами
Если в параметре нужно передать дату и время, используйте универсальный формат. Укажите год, месяц, день и время с точностью до секунд. Например, чтобы в POST-запросе передать дату 12 марта 2021 года и московское время 13 часов 2 минуты, введите:
{
"FoundationDate": "2021-03-12T13:02:00+03:00"
}
В примере +03:00 – смещение от UTC в часовом поясе Москвы. Подробнее об универсальных форматах см. на сайте сообщества W3C статью Date and Time Formats.
В ответ на запрос Directum RX возвращает дату:
•в часовом поясе пользователя системы, если для него настроено смещение от UTC;
•в часовом поясе веб-сервера, если для пользователя системы не настроено смещение от UTC.
© Компания Directum, 2024 |