Purpose:
- You can check the transfer errors for SRM Purchaser Orders (coming from your ECC system)
- Content of the LT_BAPI_RETURN local table can be added to your OSS message before you send it for SAP Support
- Extended Classic is the most common scenario based on the amount of customer messages
Overview:
- Extended Classic Scenario's Function Module (FM): BBP_PD_PO_TRANSFER_EXEC
- Important FM-s and BADI-s you can check
- Debugging steps with a Purchase Order example
Content:
Extended Classic Scenario's Function Module: BBP_PD_PO_TRANSFER_EXEC
From the SRM Shopping Cart is a local SRM Purchase Order created and replicated to the ERP Back End system. As a consequence you can find the PO in the transaction BBP_PD on the SRM side.
Important FM-s and BADI-s you can check
SRM 550:
- BBP_PD_PO_TRANSFER_EXEC
- B46B_DPO_TRANSFER
- BBP_PO_INBOUND (ECC)
- BAPI_PO_CREATE1 (ECC)
- BAPI_PO_CHANGE (ECC)
SRM 700:
- BBP_PD_PO_CREATE
- BBP_PD_PO_UPDATE
- BBP_PD_PO_GETDETAIL
- BBP_PD_PO_TRANSFER_EXEC
- B46B_DPO_TRANSFER
- BBP_PO_INBOUND (ECC)
- BAPI_PO_CREATE1 (ECC)
- BAPI_PO_CHANGE (ECC)
BAdIs which may affect the transfer process of the PO:
PO transfer:
- BBP_ECS_PO_OUT_BADI
Within R/3 Plug-ins:
- BBP_MAP_BEFORE_BAPI
- BBP_MAP_AFTER_BAPI
Debugging steps with an example
- Check the PO’s GUID in BBP_PD and take a note from it. As you can see this PO has been created automatically from a Shopping Cart. Confirmation and Invoice from the vendor are expected:
- Set a session breakpoint in META_BAPI_DISPATCH or META_DPO_TRANSFER (SE37):
- Start SE37 again and enter the FM-s name (BBP_PD_PO_TRANFER_EXEC). Enter the PO’s GUID as the parameter of the Function Module. Hit Execute (F8). Debugging session starts:
- Relevant FM is selected from the table BBP_FUNCTION_MAP based on the Back End system release. In our example this is B46B_DPO_TRANSFER. Please consider that BAdI-s can be called before accessing the Back End system (for example: BBP_ECS_PO_OUT_BADI):
- Navigate in the relevant FM (in our case B46B_DPO_TRANSFER) to the function BBP_PO_INBOUND:Please make sure that you have dialog connection and user, so that you can access the Back End and check the source code in the ECC system. You can directly set another breakpoint at the relevant part (B46B_DPO_TRANSFER -> CALL FUNCTION ‘BBP_PO_INBOUND’). If you have done that before starting the debugger session, just press F8 (Continue) and the debugger will directly jump to this part:
- On the screenshot you can see that we have entered the BBP_PO_INBOUND function and with the help of an RFC call we are in the ECC system:
- BAPI_PO_GETDETAIL is called in the ECC system, system checks whether this is a PO change or not. If this is not a change process, the PO will be created with a BAPI (BAPI_PO_CREATE1 will be called in the FM CREATE_PO):
- After the BAPI has been called and processed, possible error messages are returned in the local table LT_BAPI_RETURN. Please take a screenshot from it or copy the content of the table and attach it to your OSS message before sending it for SAP:
Remark:
You can debug the Classic Scenario this way as well by the FM: BBP_PD_SC_TRANSFER. The parameter is here the number (GUID) of the Shopping Cart of course.
No comments:
Post a Comment