BADI MRM_ITEM_CUSTFIELDS can be used to enhance the standard MIRO detail screen and add the new custom Tab and custom fields in MIRO line items screen.
BADI implementation steps and configuration of custom subscreen:
1) BADI MRM_ITEM_CUSTFIELDS is to be implemented. Implementation of this BADI is bit tricky which is covered in this post. We have to create one custom implementation to add the new custom fields. There are five methods TABPAGE_LABEL_SET, INVOICE_DATA_TRANSFER, CUSTOM_DATA_TRANSFER, CUSTOM_DATA_GET and INVOICE_DATA_GET to add the Tab and name it and to set and get data to and from MIRO line details screen.
2) We have to configure Subscreens for the new custom fields.
Go to the Subscreens Tab in the created Implementation.
The Subscreen call program should be SAPLMR1M. The Screen number should be ‘6050’. The Subscreen area should be ‘CUSTOM_DATA’. The Program called ‘SAPLZO_CUSTOM_FLD_IN_MIRO_LINE’ is custom module pool program which is a copy of standard SAP example program ‘SAPLIDNL_WKA’ (check for SAP example in SE18).
The Screen Number is 200 will hold the new tab and the custom fields, which is present in called program ‘SAPLZO_CUSTOM_FLD_IN_MIRO_LINE’.
Append new custom fields:
Say the new fields are ZZ_ALLOWANCE and ZZ_UNITPRICE. Since these two fields are to be added to the MIRO line, we have to be append these fields into table RSEG, structures DRSEG_CI and CI_DRSEG_CUST (as shown below). A new structure and table type is also created to hold the screen data. These structures and tables would be used in the BADI implementation and custom program screen to add the new fields in the MIRO screen.
Code snippet to enhance the screen:
As mentioned earlier, we have to create a module pool custom program and attach as sub-screen. For the ease of development, we can copy the SAP standard program SAPLIDNL_WKA and change in that program.
Remove the fields from the example screen and create a new structure to add the custom fields which we want in MIRO line item.
In this case, we created a new structure ZOS_DRSEG_WKA and replaced the SAP structure DRSEG_WKA.
The standard SAP example is showing fields ENH_DATE1, ENH_DATE2, ENH_CHAR1, ENH_CHAR2, ENH_PERCENT and ENH_NUMC1. We have removed these fields and added the new custom fields as highlighted below.
Result of the above implementation
With the above simple steps, you would be able to enhance the standard SAP MIRO Detail screen. New custom Tab ‘Dropship‘ is added with custom fields.
The custom fields would be saved in the standard SAP table RSEG.
You might also like to check our post on Adding custom fields in standard MIRO Header screen using BADI BADI_FDCB_SUBBAS01.
Image source : vr-zone.com