Symptom
You are creating a purchase order via web service Managepurchaseorderin, but you find the purchase order is created in a different currency from which you mainatined in the web service request.
Environment
SAP Business Bydesign
Reproducing the Issue
- Go to Application and User Management work center
- Go to Service Explorer view
- Search service ManagePurchaseOrderIn, Download WDSL
- Log in Soap UI
- Open the ManagePurchaseOrderIn WDSL file, ManagePurchaseOrderInMaintainBundle
- Maintain the request content, giving supplier ABC (ABC refers to the supplier ID), currency DEF (DEF refers to a kind of currency)
- Run the request, purchase order is created
- Go back to ByD system, Purchase Requests and Orders work center
- Go to Purchase Orders view, find the purchase order
You see the purchase order is created in a different currency, GHI.
GHI is the default purchasing currency maintained in the master data of supplier ABC. However you don't understand why system picks the supplier default purchasing currency instead of the currency you maintained in the web service request.
Cause
You forgot to maintain action code for element <PurchaseOrderMaintainBundle> in the web service request.
If you don’t maintain any action code, the default action code will be 04 (Save). With action code 04, the purchase order could be created in the system, but the currency information will not be reflected and system will automatically determine it. Hence the purchase order is created in the supplier default purchasing currency.
Resolution
Please use action code 01 (Create) :
<PurchaseOrderMaintainBundle actionCode="01">
Then the currency information maintained in the request will be reflected in the created purchase order.
See Also
Help Document: Inbound Service ManagePurchaseOrderIn
Keywords
Purchase Order Web Service, Wrong Currency, ManagePurchaseOrderIn, Purchasing Currency, 采购订单, 货币 , KBA , AP-POP-PO , Purchase Order , Problem