Introduction
After upgrading from SAP ERP to SAP S/4HANA 1909, I noticed that transaction
MM17 was not working properly for Material Master customer fields. It took me a while to figure out why and how to solve this. Next, I’ll share the solution I’ve come up with for those facing the same issue.
MM17- Mass Maintenance for Material Masters
Enhancement Concept
SAP note
576160 describes how to add customer fields to
MM17. The concept in a nutshell:
MM17 processes IDocs internally so customers need to enhance the used IDoc Type
MATMAS03 by relevant customer fields using the IDoc enhancement concept. In addition, two pieces of ABAP source code are required: one to add the data to the IDoc data (BAdI
MG_MASS_NEWSEG) and the other to copy the data to the application during "inbound processing" (function module
EXIT_SAPLMV02_002).
Changes with SAP S/4HANA 1909
With SAP S/4HANA 1909, a Business Function named
DIMP_SDUD is "always active". As a result, the BAdI implementation
DI_MG_MASS_NEWSG is switched on which changes the IDoc Type from
MATMAS03 to
MATMASDI.
Additionally, the field MATNR_LONG instead of MATNR is used in segment E1MARA1 for storing the Material Number.
Necessary Adjustments
The IDoc Type
MATMASDI must be enhanced. For that, the existing customer segments used to enhance MATMAS03 can be reused. In addition, the method
ADD_NEW_SEGMENT of the BAdI
MG_MASS_NEWSEG implementation should be checked. The "segment searches" in table
LT_E1MARAM should use
MATNR_LONG instead of
MATNR. Example:
READ TABLE lt_e1maram WITH KEY matnr_long = e1maram-matnr
INTO we1maram TRANSPORTING docnum pointer matnr.
Summary
After the adjustments have been made, transaction
MM17 continues to work for customer fields.