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 blog. 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.
Method
TABPAGE_LABEL_SET
Method
INVOICE_DATA_TRANSFER
Method
CUSTOM_DATA_TRANSFER
Method
CUSTOM_DATA_GET
Method
INVOICE_DATA_GET
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.
沒有留言:
張貼留言