This page introduces how to use MASSD and what to consider when using this transaction.
MASSD is a SAP Basis Tool used for mass update of certain object’s data eg. Locations, Products and other master data business objects.
Use this transaction very carefully as it updates master data tables directly. This is important because certain UI checkforms, screenlogics are not considered when running MASSD. It is even possible to write values to fields that would not be verified by a UI transaction. E.g. if a field allows only ''X'', ''E'', ''P'' values on the UI, it is still possible to write ''Z'' with MASSD. This would cause that some applications cannot interpret/read the value anymore.MASSD in general must not be authorized for usage for end-users.
Transaction: 'MASS' and 'MASSD'
SCM installations only support MASSD transaction. Although MASS seemingly executable due to the common framework of the two transactions it is not supported is SCM. The basic rule is:
MASS to be used in ERP and MASSD to be used in SCM. The two transactions are not interchangeable.
The following SAP Help describes the main differences between them: https://help.sap.com/saphelp_scm41/helpdata/en/a0/fe1db802a1458192aebc71e477530c/content.htm
Authorization concept in MASSD:
There is also a difference between MASS and MASSD in the authorization concept as well.
You can restrict authorization via:
- the MASSD transaction itself > this is the recommended way. Assign the users who are necessarily need to use MASSD (they should have * access to the objects to be maintained)
- on product / location level with a limited functionality (it is advised to have authorization for product and location on a * level for the users who use MASSD)
You cannot set authorizations for the different objects to be maintained. (B_MASSMAIN is not to be adjusted for MASSD)
1825516 - MASSD - PRODUCT: no authorization check based on APO locations
1640403 - MASSD Location Authorization Check
Selection Criteria number of entries limitation:
In the area „Selection criteria“ of transaction MASSD about 1000 single selection criteria can be entered at the most (note 330416); this is important to know because in case of “Import from text file” functionality in the multiple selection popup; the imported text file may contain more than 1000 single selection criteria which may lead to an error when running MASSD; the customer should be recommended to work with packages of objects which contain less than 1000 entry in the selection criteria or use ranges:
consider: [*] A* may select many objects but represents only ONE selection criteria
(In case of a variant to be saved with more than 999 selection criteria, the message can occur: Variant [***] has not been saved, as more than 999 selection conditions - Message no. M&168)
Update task during MASSD:
- MASSD triggers an update task for maintaining values. The update task normally finishes later than the transaction reports itself finished. More info on update tasks:
Use of MASSD
Please see the following SCN Wiki Test Case: Test Case for MASSD transaction
Mass Maintenance MASSD – There is the transaction MASSOBJ introduced for this reason. Customizing is not available in SPRO.
If you do not see all the expected fields in the selection criteria that you wish to maintain in the MASSD transaction then probably the customizing settings are incomplete in the system. In MASSOBJ you can maintain the structures to be considered for maintaining object types (db table: MASSTAB):
- Select object type:
- Go to ''Application tables'' and define which structures you wish to display when maintain objects in MASSD.
Massd with background report MASSBACK:
SE38 -> MASSBACK
It can be used for regularly scheduled pre-set (with variant) jobs. Please note if "Retain Values" is NOT checked all the changes will be applied immediately.
Master Data Locking Concept:
(SPRO -> SAP IMG -> SCM Basis -> Master Data -> Define Parameters for Master Data Locking Concept)
Behaviour of MASSD transaction:
1.You save a variant in MASSD with defined ”Set Fixed Values”. The values you set are either NULL values or the default values of the specified field. However when you reload the variant the dropdown list is showing “No Change” again instead of the preset changes. This is how the MASSD transaction is designed.
If the achievement is to use MASSD to initialize values, then the variant can be run in the background with MASSBACK transaction
Detailed explanation: There are differences between saving in the background from transaction MASSD and running a variant in the background using MASSBACK on its own. When saving changes from MASSD in the background, a temporary variant is created. This then gets saved to the database and it is used further on when MASSBACK is called during this process. If there is a ‘no change’ in MASSD, then this line will not be saved into the database for that temporary variant. The variants in MASSD gets saved in a way that the set to initial value and the ‘no change’ is saved the exact same way. There is no way to differentiate between them in the database. One side effect of this is that if you save a variant with a field set to initial value, once you load it back it gets displayed as ‘no change’. This is the standard behaviour of MASSD. Since you can only set an attribute to 'no change' in MASSD, when running the variant as a background job in MASSBACK, the attributes that you have set to initial value, or saved as 'no change', will get initialized. Hence the target of initialization can be achieved.
However if there is no aim to initialize any entries it is important to take the ''no change'' attribute out of the variant.
Please consider implementation of note, that has a correction in the framework: 2213713 - MASSBACK - incorrect response when variants from transaction MASSD configured with "No change" fields
2. Selection Criteria: There are frequent queries about such issues like: ''The defined selection criteria does not return all of or even any of my expected results'' or ''The selection criteria that I have defined returns unexpected or too many results''. This behaviour is due to wrong ''component'' selection criteria definition most of the times. MASSD transaction is quite ''sensitive'' when determining the objects from the criteria. Please make sure that you are setting the right component for every objects that you want to be considered.
3. : EWM / Warehouse product attributes: if you need to maintain Warehouse Product fields, then make sure that you define the selection criteria from the Warehouse - component (/SAPAPO/MATLWH_MASS) and not from Header Data (/SAPAPO/MATKEY_MASS) component. This is in order to return you the Warehouse product results.
You need to pay attention not only for the Selection Criteria but the ''Attributes to be Maintained'' as well. If you choose the attributes not from the precise component, the changes may not be made for the selected attributes.
4. : Please note that from SCM 7.0 the Penalty costs attributes are not to be maintained via MASSD if the fields are initial for a specified product. Therefore you might not see all the selected location-products in the maintenance table or you receive msg. “No data meet the selection criteria “. On the other hand it is possible that there are additional products appear that you did not even define in your selection criteria. Please mind the following note and for penalty cost maintenance use the reports advised in the note.
1608256 - MASSD gives error “No data meet the selection criteria “ during Penalty Cost Maintenance
5. Error messages - no commit: even 1 error message in the job log can prevent the update of the whole object pool, that was meant to be updated. MASSD transaction .MASSBACK job is not flexible, it works with an ''all or nothing'' logic.
Questions and Answers:
Q: The variant I create in MASSD does not keep my pre-set fix values, but shows "No Change" when reloaded.
A1: It is possibly an error, that can be sorted with note: 1523881 - MASSD variant change is not saved
A2: If you are modifying a variant (narrowing or extending the selection criteria) which already includes pre-set fix values for ''Attributes to be Maintained" you need to make sure to save the variant while the ''Maintenance Screen'' is opened on the right hand side. If you save the variant without the "Maintanance screen" is open, then your pre-set fix values will be set to the default status "No Change", which you then have to enter again and re-save the variant. This is due to the screen switching of the application which is quite normal. Please refer to SAP KBA 2453384 - MASSD variant change causes "Set Fixed Value" lost
2166104 - Incorrect ordering of internal table in form MAINTAIN_MATLWH (This is appilacble if not alll of your EWM product attributes are maintained even after a successful change execution in MASSD)
2166871 - Follow up note for 2166104
1626464 - MASSD: Deletion flag for Products that are still being used by other objects
Topics to add: Exceptions , FM-s for different business objects