Material master deletion flag and blocking activities
Flagging Material Master Records for Deletion
For a material master record to be deleted by the
archive and delete program, it must be flagged for deletion. Please read
flagged for archiving when seeing marked or flagged for deletion in SAP.
You can set deletion flags at different organizational levels, for example, at plant level or/and at sales organization level.
The material master record is then marked fordeletion at this level and at all lower levels.
How to do it technically?
Transaction MM06
Example:
You set a deletion flag at client level. Since it is the highest hierarchy level, the material master record is deleted at this level and at all lower levels.
(pictures showing the screen before and after execution)
Means, this material master record is globally marked for deletion (e.g. for the existing organisation levels Hamburg and London, but as Italy would as well get a message when trying to extend this material for their organization.
You set a deletion flag at plant level. Since it is below client level, the material master record is marked for deletion at plant level and at all lower levels (for example, at storage location level), but not at client level.
Means, this material master record is only for Hamburg plant marked for deletion, London is still active and Italy can extend this material master to their organization without any trouble.
Even the other Hamburg organization levels like Sales Org and Warehouse are still active in the example. This situation can occur when moving the production to another site. Hamburg sales organization can still sell material (shipped from another plant) , but the Hamburg plant cannot produce or store it.
You set a deletion flag at storage location level. Since it is below plant level, the material master record is marked for deletion at storage location level but not at client level or plant level.
Means, in this material master record only a certain storage location is marked for deletion, all other storage locations are still active.
Setting a flag for deletion will usually just trigger a warning message whenever the material is used. E.g. in material master maintenance or when doing goods movements.
This warning message will not stop you from doing what you want to do. It is supposed to make the user think if he is using the correct material or not.
If you want block a user from using this material master in any transaction, then assign a material status to the material master.
The material status is a customized status, that can restrict certain activities and allow others ( e.g. restrict procurement but allow material movements like goods issues, or block any transaction for this material)
A material status can be set at general level, and affects all plants that share this material master, or you set the status only for a specific plant at plant level
in material master.
Example for general level, status is set at basic data 1 view. You can add a date from which on the status becomes active. This date field is right of the status field
Example for material status at plant level only :
If a user uses a material that has a status which restricts the activity he performs, then he will receive an error message:
The document is good for the new user .
Thanks,
Really, this document contains basic of the Material Master deletion activity in well versed text.
very good document for beginners and very well explained.thanks bro
Good Work. Nicely explained.
can you add mm70,mm71 transactions also? to delete from data base also?
who will use mm70 and mm71? MM consultant or basis consultant?
I will do this probably later in a separate blog, nur sure if in this forum or in the ILM forum. But I have to investigate if it is not already present. if you search for archiving toppics, then you should use SARA as a keyword, much easier to remember than 100 and more individual tcodes for each archiving object.
Dear Jurgen,
Nice blog thanks for you are explanation If I block x plant status it will allow to create STO from DC .
This is more useful tips for the new comers.
Regards
ksk
Very nicely documented
fine one
verynice
Thanks Jurgen, good blog,
With best regards,
Amit Anasane
Very good presentation.
Thank you.
Bhaskar Bose.
nice one....Thank you.
thx Jürgen,
nice overview, easy to use
Matthias
thank you sir,
the document is very useful for beginners like me.
BR/
Anil
thanks for your valuable solution..
BR
ABS
Thanks for a very nice and detailed document.
Thanks a lot for your valuable info!!!
It gave an insight for my project 🙂
very detailed & Nice Documentation for Freshers.
very instructive.. thanks
Very Good Document.
If you could provide some info for How to identify Un used materials as per your experience for Deletion /Archive then it would be great.So that we can get complete info in one blog.
It will become a second blog - The headline and a few thoughts are already in my draft folder. I wanted to do some more blogs in December (I had an entire month off), but unfortunately had to much moderation activities. Will come this year, but I cannot promise the date
No problem ,We wait for that.Thanks for your support always ...
Hi Jurgen,
Very detailed document you have posted.
Many thanks Jurgen.
Hi Jurgen,
It's very useful document,But when i will do this at Plant level,it is showing error 'You must use retail functions to process the article'.How to solve this issue?
Many Thanks
Sorry, I am not used to Retail processes, just heard that Retail uses MM42 instead of MM02.
Dear Jurgen sir this is very good document
i am sd consultant but i want to know one thing by using mm06 materiel blocking we can change warning message to error message also by using this t.code OLME
ere in Version:00,
APPL.area: ME, Message
No: 051,
Thanks alot
what my doubt is in your blog you have said that system will give only warning message
please thanks a lot
Hello Jurgen,
Thanks, this is a very useful document.
Is it possible to grey out the 'material' checkbox in MM06... So that when a user runs this transaction, he is allowed to set DF only for certain plants for which he has authorizations and not globally?
Thanks.
I am not sure if the box can be greyed, I think with a transaction variant this is possible.
However, if you want restrict people from deleting a material centrally, then you should not give them authorization. Object M_MATE_MAN is used for central maintenance, if you do not give activity 06 then the user should not be able to set a deletion indicator, regardless if the box is open
Hi Jurgen,
Would appreciate help / assistance which follows from the above post.
I have flagged items for deletion at both Plant and Sloc location. When I have to "re-activate" this item at Plant level for "one-off" purchases etc, it re-activates the item in ALL previously flagged for deletion Slocs. How do I stop this from happening as I have to go through and re-flag for deletion at Sloc level.
Thanks and much appreciated.
no way in standard.
Tks for the response.
Sloc stays under the plant. Its quite a series of organizational structure for material master data. Upper level deletion flag will set the flag for all lower level. The same way removing deletion flag for upper level, system will remove the flag from all lower level.
Tks for the response.
good
This is a very useful document and thank you that.
I would appreciate help / assistance if you can for follow issue related the flag for deletion set in MRP areas (field LOEKZ). Based on that we can still use the storage location, post goods movements to this storage location and the stock will still be displayed on MMBE but not in APO.
If the stock is increasing for example (received goods) and after the flag of deletion is removed, even if I run the CIF for master data and stock, the stock is not updated in APO and I don’t know why.
But if I performed a new good receipt in stock and run the CIF for stock , the information (the stock) is updated in APO ( all quantity - the first one which was done when the flag for deletion was set and also when the flag for deletion was removed)
Can you tell me why this behavior? How I can fix the issue?
Thank you for help,
Valentina M
According to the docu Integration of Stocks - Integration via APO Core Interface (CIF) - SAP Library:
"After the initial transfer, CIF transfers only those stock changes that occur as a result of stock movements to SAP APO as part of the transfer of data changes."
MM06 is not a stock movement, hence you don't get the stock CIF'd after removal of deletion indicator. I dont see any other chance than doing a movement e.g. 201 and subsequent a reversal of this movement to get the stock transferred with the next CIF
its much appreciable document. Explained in a detailed manner of org level and technically
sound to be how to mark flag for deletion.
Thank you sir for your contribution always to scn members.
you are a mentor for all SCN members sir.
Regards,
Vivek
Hi juergen sir,
thanks and regards
Suheel
this is done with the material status
Hi Sir,
I tried that one ,but it is not working as it not restricting to create production order. Only warning message generating , i tried to change to warning message but failed . please give me some tips to overcome from this.
Thanks and regards
Suheel
it is all customizing of material status.
check in OMS4
IMG Path: Logistics General -> Material Master -> Settings for Key Fields -> Define Material Statuses.
Press F4, and either set the indicator for warning, error, or no reaction
Hi sir ,
Thank you very much for your valuable suggestions and time. It is working fine now.
Regards
Suheel
Thanks for your detailed explanation.
I'm a fresher and it's really useful. But can you pls help me if it has any difference bw "Plant specific material status" field in Purchasing view and MRP1 view.
Regards,
Duyen
just test it, remove it from one place and look at the other place to see what happened.
Hi Jürgen,
Thanks for sharing a useful blog, but what I found the new thing is that deletion flagged material can't be added to BOM component and error message is hard corded in standard (Error message type 29, error number 122). Thus deletion flag itself impacts on BOM registration step like material status.
Regards,
Insung
Would it make any sense to add deleted materials to new BOMs?
Right, it doesn't make any sense business wise. However some company can't control material deletion process centrally without strong master data governance, then it can happen that end-user set a deletion flag but production team still try to add a BOM, Routing by that material in the mean time.
Furthermore not only BOM registration, but also routing creation for deletion marked material also trigger a error. This explicit error seems quite understandable but each module behavior is not consistent. For instance, Purchase order also raise an error but error can be skipped by IMG but Sales order displays a information message(also hard-corded).
Regards.
Insung
you also get an error while creating info record if I remember right.
But all this should not really be any bigger issue, you can click the blue i button next to the material description and will immediately see who has set the deletion indicator and can tell him that you want it activate again.
Hello Jürgen,
I have following business case. I need to block Inventory managmenet just on a material/plant/storage location level. The issue is that users should create POs and perform GRs on a new storagre location instead of an old one. We cannot use material status as it is just on a material/plant level. Deletion flag does also not meet this requirement, because user still will be able to perform GRs. Any other ideas? Archiving is not the case here as well.Removing storage location from conf is also too drastic and not recommended.
In all threads you suggest that removal and deletion can be only performed by archiving, but maybe there is an another secret way to meet this requirement.
You can implement a user exit or BAdI for MIGO to check the deletion indicator in the material master.
Unfortunately I cannot use this solution as we have an ongoing upgrade.
But thanks anyway for an answer as right now I'm pretty sure that there is no easy way to solve this issue.
Thank You very much. I am a new user to SAP and this has helped me tremendously.