Формулировка проблемы: при создании документа по реестру с помощью метода API нет возможности сразу записать в него нужные данные по форме.
Связанные задачи:
Решение: необходимо доработать метод API
/api/registry/create_doc_rcc
, добавив
необязательные входные параметры data
и
eventProperties
, где
data
- массив json с данными по форме
(параметр формы);
eventProperties
- json с параметрами для
отправки в событие изменения данных по форме.
Формат параметра data
:
"data": [ { "id":"field1Code", //идентификатор компонента "value": "field1_value", //значение "type":"widgetType1" //тип компонента }, ..., { "id":"fieldNCode", "value": "fieldN_value", "type":"widgetTypeN" } ]
Формат параметра eventProperties
:
"eventProperties": { "paramA": "A", "paramB": "B" },
Если передан параметр data
, выполняется
добавление или замена данных компонентов, переданных в массиве
data
, то есть в этом случае метод работает
аналогично методу rest/api/asforms/data/merge
.
Слияние при этом происходит с данными по умолчанию (задача #45).
Если данные успешно созданы (errorCode
равен 0),
то дополнительно требуется возвращать массив data
с сохранёнными данными.
Если в параметре data
передан идентификатор
динамической таблицы, то она будет полностью перезаписана. Дозапись
в динамическую таблицу не поддерживается.
Тип запроса не меняется.
Альтернативный поток 1. Передан некорретный json. Сервер возвращает ошибку 400 с сообщением:
{ "errorCode": 3, "errorMessage": "Переданы некорректные параметры" }
Альтернативный поток 2. При сохранении произошла ошибка на стороне сервера. Сервер возвращает ошибку 500 с сообщением:
{ "errorCode": 13, "errorMessage": "При сохранении призошла ошибка на стороне сервера" }