Что мы хотим сделать
Мы хотим создать как sales header
, так и соответствующие sales lines
в одном вызове API.
Как мы пытаемся это сделать
Для этого мы пытаемся выполнить глубокую вставку , как указано в спецификации OData .
Пример
POST http://our-nav-host:12202/NAV110_TEST/ODataV4/Company('CompanyName')/SalesOrder
{
"No": "1234",
"Sell_to_Customer_No": "1234",
"Sell_to_Customer_Name": "Test",
"Sell_to_Address": "Teststreet 56",
"Sell_to_Address_2": "",
"Sell_to_Post_Code": "1234",
"Sell_to_City": "Test",
"SalesOrderSalesLines": [
{
"Document_Type": "Order",
"Document_No": "1234",
"Line_No": 10000,
"Type": "Item",
"No": "21981"
}
]
}
Мы получаем 200 OK
и sales header
создается, но без каких-либо sales lines
.
NAV Config
Мы опубликовали веб-сервис для страница 42 (Заказ на продажу), и мы используем соответствующий OData V4 URL в вызове.
SOAP
Если мы попытаемся сделать то же самое с URL-адресом SOAP иSOAP-вызов это работает.Заказ на продажу создается со строками продаж.Но мы бы очень не хотели использовать SOAP.