Handling Customer Fields in BAPIs which doesn’t have Extension Structure
You have identified a BAPI for a certain SAP process creation, the standard SAP Process has customer fields to be filled in too. But the BAPI doesn’t have an extension structure to update the Customer Fields involved in it. And your client mandates against the use of BDC.
As an example the BAPI to create a Notification BAPI_ALM_NOTIF_CREATE (which doesn’t have an extension structure), equivalent to the transaction IW21, is considered.
The QMEL structure has been enhanced with an Append Structure with custom fields in it.
IW21 is configured such that the added customer fields are linked to the VIQMEL structure (QMEL’s View).
In this case there is no direct approach to fill in the customer field data into the BAPI BAPI_ALM_NOTIF_CREATE, as it doesn’t have the QMEL structure in the either the import or the table parameters.
To address these scenarios SAP has been providing Customer Exits which could handle the Structures which hold the Customer fields to be update in the Standard Transaction.
In our scenario, analyzing the flow of the BAPI BAPI_ALM_NOTIF_CREATE, lead to identify a customer exit QQMA0025 with the exit FM EXIT_SAPLIQS0_017 which handles the structure VIMEL in the importing and
exporting parameters as below
So in order to solve this scenario, follow the below steps,
· –>Implement the customer exit which is identified to handle the customized structure (VIQMEL in our case)
· –>In the source program where in the BAPI BAPI_ALM_NOTIF_CREATE is used to create a Notification,EXPORT the customer data in to Memory ID.
· –>In the implemented customer exit, IMPORT the Customer Field data from the Memory ID.
· –>Fill the imported data to the corresponding fields of the VIQMEL structure.
This approach will help us in preventing the issues which could arise in implementing a BDC call for such scenarios. BDC calls are prone to issue relating to the Changes in Screen Configuration and Enhancement Pack related changes.