6/29/2015 4:26:34 PM

The BAPI_PO_CREATE BAPI for creating purchase orders does not cover all of the functions of online transaction ME21.

What is not possible with BAPI BAPI_PO_CREATE?

1. You cannot create header texts when using the BAPI.

2. You can only create subcontracting items if the components (bill of material) already exist. As of ERP 2005, you can transfer subcontracting components to BAPI_PO_CREATE1 and BAPI_PO_CHANGE. By doing this, you can create completely new BOMs.

3. You cannot include the confirmation control key (at item level, field EKPO-BSTAE) for the BAPI (this function exists in the new BAPI BAPI_PO_CREATE1, table: parameter name POITEM, field CONF_CTRL).

4. You cannot fill the "Our reference" field (EKKO-UNSEZ) (this function is available in the new BAPI BAPI_PO_CREATE1). The "Your Reference" field (EKKO-IHREZ) is filled using PO_HEADER-REF_1. 

5. Generally, you can use the BAPI and the corresponding IDoc to change only fields that also exist in the interface. For example, in Release 4.0B, the deletion indicator, the delivery completed indicator and so on are missing from structure BAPIEKPOC.

6. The system ignores the settings for the item number interval (transaction OMEC) (available in new BAPIs BAPI_PO_CREATE1 and BAPI_PO_CHANGE).

7. You can only process the partner roles 'Invoicing party' (IP) and 'Goods supplier' (GS). You can use the new BAPIs BAPI_PO_CREATE1 and BAPI_PO_CHANGE to change partner data.    

8. You want to use transaction LSMW to create purchase orders. The transaction uses the Application Link Enabling (ALE) interface (PORDCR) of the BAPI. When you compare the fields available in transaction LSMW with those from transaction SE37, not all fields are available in LSMW. Due to technical restrictions, you cannot subsequently generate an ALE interface. The only solution is to generate a separate ALE interface using transaction BDBG which is situated in the customer namespace. See the online documentation for information about generating an ALE interface.

9. You cannot create document links with the purchase order.

What is not possible with BAPI BAPI_PO_CREATE1/BAPI_PO_CHANGE?

1. There is no IDoc for the BAPI in Release 4.6C. For BAPI BAPI_PO_CREATE, there is logical message type PORDCR (PORDCR01, PORDCR02). This means that it is not possible to use Electronic Data Interchange (EDI) to call the new BAPI. This function is available as of the R/3 Enterprise release. If you require this function, you can generate an ALE interface yourself. You can find information about how to do this in the BAPI guide (see, for example, transaction BAPI).

2. You can use the BAPI to create texts once you have imported Support Package SAPKH46C30 (corresponds to Patch 30). 

In online transaction ME21N, you can enter an address manually and you can make it available to other items by choosing Repeat address. This function is not available in BAPI_PO_CREATE1 or BAPI_PO_CHANGE. Note that each time you enter a delivery address manually, the system creates an entry in the ADRC table. In addition, when you create messages, the system issues the address at item level. 

3. You can create partners using the BAPI only as of Support Package SAPKH46C33. You cannot implement this function using a note. If you require an advance implementation, contact your SAP consultant.

4. Purchase orders cannot be created with status "On Hold" until you have implemented Note 354771. Otherwise, for example, it is not possible to create any purchase orders that still contain errors.

Service items (planned and/or unplanned) can be on hold as of SAP ERP 6.05. For technical reasons, purchase orders from the "Third-party'" item category cannot be "On Hold" any longer.

5. Creating condition records for purchase orders is only possible with restrictions. As of the R/3 Enterprise release, you can create, change and display header and item conditions.

6. You cannot transfer Import/export data. This function is available for BAPI_PO_CREATE1 as of the R/3 Enterprise release. Due to technical reason, it is still not possible to change import data.

7. The new BAPIs BAPI_PO_CREATE1 and BAPI_PO_CHANGE are available only as of Release 4.6C.

8. The BAPIs ignore the default values maintained in transactions ME21N and ME22N.

9. The field control logic of transaction ME22N is available for BAPI_PO_CHANGE (not for items to be created; see below) as of the R/3 Enterprise release. If you specify values for fields that are not ready for input in the BAPI in the R/3 Enterprise release, those values are not transferred, and the system issues a message. A corresponding function for BAPI_PO_CREATE1 is not planned for technical reasons.

10. Invoicing plans are not provided in the BAPI. You can only use this function in the ordering transactions (as of Release 4.0B). -> Solution as of SAP ERP 6.04 (Enhancement Package 4 for SAP ERP 6.0)

11. The configuration is not available in the BAPIs.

12. When you create a purchase order, the system issues error message 06 218 , even though the NET_PRICE field is filled at item level. To avoid this error message, enter a corresponding currency key in the HEADER in the CURRENCY field.

13. You cannot create or change document links with the purchase order.

If you like this blog, please share (Facebook/LinkedIn/Google+) to click below links so it will reach to others.