Steps to add custom Tab in standard MIRO item screen using BADI MRM_ITEM_CUSTFIELDS

MIRO Screen enhancement
Share on Facebook8Share on LinkedIn8Tweet about this on TwitterShare on Google+1
Please Share!!
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.
[adToAppearHere]
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.
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.

 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

Share on Facebook8Share on LinkedIn8Tweet about this on TwitterShare on Google+1
Please Share!!

About the Author

SAP Yard
SAP Yard
SAPYard is one stop page for all Technical Folks in SAP. You would find un-conventional explanations, tutorials, and tricks. Please like our Facebook Page and also join our LinkedIn Group.

8 Comments on "Steps to add custom Tab in standard MIRO item screen using BADI MRM_ITEM_CUSTFIELDS"

  1. Hi Raju, Is this exit also applicable for FB60 to create a sub screen for item details?

    • Dear Santosh – We have not tried for FB60. Just create a test implementation and check in debug mode if the BADI is triggered from FB60.

      All the best.

      Regards,
      Team SAPYard.

  2. Mutero william | August 14, 2015 at 2:54 pm |

    Raju, thank you so much. I had a requirement like this some time ago and i didn’t know how to go about it. The method i used is unspeakable. Thanks a lot.

    Regards

    William Mutero

    • Hi William – This is a very common requirement in almost all clients..
      Regarding your method, sometimes the end delivery matters. Not the way.. You met the requirement and delivered it and clients are using it. That’s it. 🙂

      Regards,
      Raju.

  3. Mutero william | August 14, 2015 at 2:54 pm |

    Raju, thank you so much. I had a requirement like this some time ago and i didn’t know how to go about it. The method i used is unspeakable. Thanks a lot.

  4. peterjohn | June 23, 2015 at 6:13 am |

    This is one awesome blog article. Much thanks.

    Regards

  5. You are welcome, Judyl. Happy to know that our post helped you in real time.

    Raju.

  6. Thanks so much for this, Raju. It’s just what I needed to do and you made it simple …

Comments are closed.