API | Генератор позиций документа

Когда нужно создать документ, который должен содержать коды, но самих кодов нет. Можно сконфигурировать позиции исходя из выборки по различным данным.

Формат данных#

При запросе на создание документа, можно передавать поле children в котором будут содержаться позиции документа. Но если позиции должны содержать коды а самих кодов нет, но есть информация по которой эти коды можно выбрать, можно передать поле children_generator которое будет содержать информацию о том какие коды нужно найти и проставить дополнительные данные.

Пример запроса

Если нужно перенести со склада на склад все коды по определенному полю документа, можно использовать следующий запрос

POST {{host}}/bp/processes/transfer/local/ со следующим body:

{
"data": {
"stock_slug": "S-10"
},
"children_generator": [
{
"query": "documents.data.document_number = \"A-1000\" AND documents.data.document_date = \"22.10.2020\" AND documents.status = \"completed\"",
"count": 1000, // Если не указывать кол-во, будут выбраны все коды в выборке
}
]
}

Таким образом, на выходе мы получим документ перемещения между складами, у которого в позициях будут коды, которые будут найдены по query. Так как поле children_generator это массив, соответственно можно указывать несколько запросов, по каждому из которых будут выбраны коды.

Синтаксис поля query

В поле query query используется синтаксис "MH Query Language".