Skip to Content

It is time to clear up a widely mistaken belief, although it became almost established as truth due to the massive wrong answers given in a high disproportion when someone failed to search or is seeking for a new answer to the question “How to make error message & a warning?” or “Changing warning message to error not working” 

It is really interesting to see how attractive such questions are. Within a few minutes several answers are pointing to the customizing. Some mention the IMG path others are giving the transaction code to the same customizing. I wonder from where these suggestions are taken. Did they look up older questions and just repeat the answer? Or do they just believe that any system message can be customized, one only has to know the right customizing transaction.

So the typical discussion goes like this:

“I want to make message MM 081 to become an error”

“no problem – execute OMT4 and add this message and maintain an E for error”


Why was he shocked?

OMT4 does not even have a “New Entry”-Button


No issue at all, now the Techies jump in and inform that this is all stored in table T160M and suggest to maintain this table directly with SM30 transaction

๐Ÿ˜ฅ : not possible  I get and error “The maintenance dialog for T160M is incomplete or not defined”

๐Ÿ˜† : Click the message, it takes you to the long text. Here you have the option to generate a maintenance dialog

😘 : Thank you.

๐Ÿ˜ณ : Hi, I have one more question. I added the message as said. But it does not work, can you help me.

All are going now, leaving a desert with an unanswered question, and one more thread about how and where to maintain flexible system messages


Have you ever tried to start a car that you see in a parking space with your own keys? Why not? Probably because you know that you cannot use any key to drive any car. Why are you assuming it for any message in SAP?

Just imagine the car is transaction where you expect the warning or error according to your entry (the key) in table T160M (ignition lock). You already smashed the window to open the door (SM30, because OMT4 did not let you in)

Still the motor does not start. Are you disappointed?

Like the ignition lock needs the right key, your SAP transaction needs the right ABAP that recognize your entry.

If SAP has not foreseen a variable message in its ABAP coding, then you enter as much as you want in T160M, it will just not work.

SAP’s system messages are all stored in table T100, a small subset is foreseen to be customized, these are stored in table T160M.

T160M entries are delivered by SAP. Some more messages can be added because the programs have been prepared for this. Those new entries are usually communicated via OSS notes.

How to know if a message is customizable which is not yet in T160M?

  • Search SCN, if you find a “Hooray, it works” then you got already a good indication.
  • search SAP Support Portal
  • Check it from transaction SE91 Message Maintenance, you should know some basics in ABAP language.
    • In SE91 enter your message class and message number and click the Where-used button. SAP gives you a list of programs. double click the description on the right and SAP takes you into the ABAP directly to the place where the message is processed. Here you can see whether it is just a message with a hardcoded message attribute, like this

      •    MESSAGE W388(11).

      • ENDIF.

    • or if there is some coding which is looking into T160M table to get your customized attribute:
      • PERFORM enaco_2 USING ‘ME’ ‘040’.

      •               CASE sy-subrc.

      •                 WHEN 1.

      •                   MESSAGE w040 INTO gl_dummy.

      •                   mmpur_message ‘W’ ‘ME’ ‘040’ ” ” ” ”.

      •                 WHEN 2.

      •                   MESSAGE e040 INTO gl_dummy.

      •                   mmpur_message ‘E’ ‘ME’ ‘040’ ” ” ” ”.

      •                 WHEN 3.

      •                   MESSAGE w040 INTO gl_dummy.

      •                   mmpur_message ‘W’ ‘ME’ ‘040’ ” ” ” ”.

      •               ENDCASE.

By the way, there are message customizing where you can add new entries, still the above said is valid for them too.

Sorry for killing a dream

Trigger to this story can be read in Application area MM and Changing warning message to error message – Entry Sheet and many many more discussions in SCN and elsewhere.

To report this post you need to login first.


You must be Logged on to comment or reply to a post.

    1. Jelena Perfiljeva

      My thoughts exactly – so many times we see a question “we added so-and-so to the role, why isn’t it working?”.

      Great blog, Jurgen! Had a good laugh with the car analogy. Priceless! ๐Ÿ™‚

  1. Former Member

    Hi Jurgen,

    Great blog.. Really informative. When a message doesn’t work through customizing, we used to guess ‘ must be hard coded’.. This blog is a solid information which proves our understanding was right.. ๐Ÿ˜‰ And got an idea how to check whether a message can be configured.. ๐Ÿ™‚

    Thanks for sharing your knowledge..



  2. Jose Antonio Martinez

    Thanks Jurgen.

    Very useful information!!

    Because sometimes we think if the solution is in a discussion forum it will works,  take it as a rule.

    Regards Antonio Martinez

  3. Robyn Couch

    Excellent Jurgen

    Just a comment but people should be aware that the where used function in SE91 doesn’t always return all uses of a message.  The function module CUSTOMIZED_MESSAGE for example does an excellent job of hiding message use.

  4. Kunal Ingale

    Really nice Jurgen…..A Writter is comign out of you…… ๐Ÿ˜‰

    So any more Questions on T160M just route it to this Blog……

  5. Former Member

    Jürgen L

    It is really interesting to see how attractive such questions are.

    Surely, Its really interesting to see how attractive and informative your blogs are. ๐Ÿ™‚



  6. Naveen Vishal

    Very well explained Jurgen,

    Many functionals, mostly newbies, have the tendency to say just do it without understanding how SAP works.

    Good guide to be on SCN community and for us all.

  7. Former Member

    Hi Jürgen, your posts&answers have helped me in solving many puzzles!

    may I ask you a question here or shoudl I go to the regular SCN thread for posting questions?

    We have recently upgraded to EHP 7 and suddenly we have a message (06 073, changed last by SAP after our upgrade according to the log) which is an error message, hardcoded, as I just found out thanks to your blog. That also explained why simply cusotmizing it as W message did not help.

    Due to this change even our old stock transfer orders (including consignment stokc TOs) are now with error due ot overdelivery. The users of cours,e want the “old process” back. What can I do?

    Thank you!

      1. Jรผrgen L Post author

        Joao is right, such questions should be posted in the forum. Only questions related to the blog itself should be addressed in comment section.

        In general, if behavior of messages changes with an upgrade then my first way to find the reason would be to check SAP Marketplace for OSS notes that could have brought this new behavior as a correction for a discovered error in earlier releases.

        if a search with 06073 does not bring much inside then a search with overdelivery STO  could get some more hits.

        Try those searches and if you still have the question then post it in the forum


Leave a Reply