Enterprise Resource Planning Blogs by Members
Gain new perspectives and knowledge about enterprise resource planning in blog posts from community members. Share your own comments and ERP insights today!
cancel
Showing results for 
Search instead for 
Did you mean: 
JL23
Active Contributor

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

:cry: : not possible  I get and error "The maintenance dialog for T160M is incomplete or not defined"

:lol: : Click the message, it takes you to the long text. Here you have the option to generate a maintenance dialog

 : Thank you.

:oops: : 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
      • IF OFFENER_RG_WERT NE 0.

      •    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.

28 Comments
Labels in this area