We are hiring and constantly growing! Have a look through our vacancies to find the right role for you!
This function module is a user exit within the framework of inbound IDoc processing involving contracts.
Via the call of the function module, the customer is offered the option of filling fields on the screens that are to be processed in the standard creation of the batch input session for posting a contract.
This may, for example, be the case if the customer transmits additional data in the intermediate document to that which is defined in the standard system. The user exit provides the option of posting the data.
The call of the function module is effected prior to screen exit. At this point, customers can fill fields that are not filled in the standard system.
When the function module is called, IDoc data (control record IDOC_CONTROL and the data records IDOC_DATA) is passed on. You can tell by the message category (field IDOC_CONTROL-MESTYP) whether a newly created document (message category BLAORD) or a change to an existing contract (message category BLAOCH) is involved.
The field string EKKO_DATA contains the data on the document header. Table EKPO_DATA contains the data on document items. Data on the item currently being processed is located in the header bar of table EKPO_DATA.
Table BDC_DATA contains the data on the batch input session.
When a contract is newly created, the user exit is invoked on the following dynpros: for the header data 200 and 201; for item data 211 and 212. All dynpros are from the module SAPMM06E.
When a contract is changed, the following dynpros are processed: for the header data 205 and 201, for item data 211 and 212. Alle dynpros are from the module SAPMM06E.
The number of the dynpro currently being processed is passed on via the parameter DYNPRO_NUMBER and the module name in the parameter PROGRAM.
If the item currently being processed already exists in the system, the parameter ITEM_EXIST is set to 'X'. If the item being created is a new one, the parameter ITEM_EXIST is set to SPACE.
If an error occurs, so that no further processing is possible, the parameter SUBRC must be set to '4'. In the field string ERROR_MESSAGE the error message should be passed on. In this case, error handling is triggered for the IDoc.