When changing the 'Invoice receipt' flag (repos) in a Purchase order, the 'free item' indicator (umson) is filled and the net value of the PO item is set to 0.00. When you post a similar change of the 'Invoice receipt' flag via API_PURCHASEORDER_PROCESS_SRV, the posting fails and the system raises error: 'For items without invoice receipt, please enter price 0 (06 159)
SAP S/4Hana All Versions
Reproducing the Issue
Post a PATCH operation via API_PURCHASEORDER_PROCESS_SRV setting the "InvoiceIsExpected" field as false
When the change is triggered the system executes the pricing with pricing type A. Manual conditions are not overwritten in this case, so the original value in the PO item remains unchanged, only the 'Invoice receipt' flag is changed leading to the '06159' error.
To carry out this change via API you must use a batch operation where you can change the item entity "InvoiceIsExpected"
and set the manual price condition PMP0 to 0.00 in the same batch operation under the pricing element entity.
See the attached batch example and payload.
06159, 06 159, free item, UMSON, REPOS, LMEPOF1T, ME_CHECK_PRICING_RESULT, I_KOMP-NETPR, PRICE_NOT_ZERO_WITHOUT_INVOICE , KBA , MM-PUR-PO , Purchase Orders , MM-PUR-PO-BAPI , BAPIs - Purchase order , How To
|Batch example 06159.txt|