2

Я могу POST и invoice EntityType в веб-API.Веб-интерфейс Microsoft Dynamics 2016 | POST invoicedetail

После создания invoice я получаю guid, и я хочу создать счета-фактуры, которые, как я считаю, составляют invoicedetail EntityType.

Я не могу POST a новый invoicedetail. Каждая попытка, которую я делаю с рядом различных свойств, получаю либо Error 500 - An unexpected error occurred., либо Error 500 - The parent id is missing.

Пример строки JSON Я пытаюсь использовать POST. (invoicedetailid является GUID предыдущим счетом я создаю)

{ 
    "productdescription": "Test Line Item", 
    "invoicedetailid": "00000000-0000-0000-0000-0000000000000", 
    "priceperunit": 10, 
    "tax": 0, 
    "quantity": 1, 
    "baseamount": 10 
} 

документация является расплывчатой, и я хочу знать, какие минимальные обязательные поля для invoicedetail и как я могу POST новый invoice EntityType?

ответ

2

Поле хранения для поиска от invoicedetail к invoice называется invoiceid (не invoicedetailid, который является идентификатор самого invoicedetail). Кроме того, вы должны использовать @odata.bind-annotation:

Чтобы связать новые объекты для существующих объектов при их создании необходимо установить значение однозначных навигационных свойств с помощью @ odata.bind аннотаций.

Тело Вашего запроса на POST, таким образом выглядеть следующим образом:

{ 
    "productdescription": "Test Line Item", 
    "[email protected]": "/invoices(guid-of-invoice-here)", 
    "priceperunit": 10, 
    "tax": 0, 
    "quantity": 1, 
    "baseamount": 10 
} 
+0

Спасибо Хенрика. Работает! – sketchthat