Quantcast
Channel: SAP Transportation Management (SAP TM)
Viewing all articles
Browse latest Browse all 91

Saving time when Debugging: BOPF returned objects, here: eo_message

$
0
0

Everyone, who debugs in TM, faced the situation many times: any BOPF call returns an object, which is deeply nested, e.g. eo_change or eo_message. This post is intended to suggest a way to save time investigating.

 

For example: In debugger you execute a BOPF call (retrieve, do_action or even save transaction) and you get failed keys or a rejected flag. As a next step you may want to check the collected messages in the eo_message object.

 

screenshot_01.jpg

 

 

You doublecklick the message object and see a high number of collected messages in the attribute mt_message:

 

screenshot_02.jpg

screenshot_03.jpg

In order to learn more about the collected messages you unfortunately need to doublecklick each message reference of each line in this table, find the referenced message ID and number, open a separate session to lookup the text in SE91 and then you know whether this message is relevant for your investigation:

 

screenshot_04.jpg

screenshot_05.jpg

screenshot_06.jpg

 

But, sure, you know all those steps and got used to it. Why then this blog post?

 

Wouldn't it be nice to see all those messages in the debugger right away?

Most of us do actually not know that the BOPF colleagues provided a helping hand here already.

 

In debugger, include the tool section "Script Wrapper". On the very right side, push the button 'New Tool'.

 

screenshot_07.jpg

 

screenshot_08.jpg

 

In this new section load the existing debugger script '/BOBF/TOOL_DEBUGGER_SCRIPT_F'.

 

screenshot_09a.jpg

 

Into the BOPF Framework Object field you put your local object variable, which imported the returned eo_message parameter, and then you click on 'Start'.

 

screenshot_09b.jpg

 

And what a nice relief! You can see all the messages right away in the debugger and there is no need to spend so much time to navigate through all the message references to pull out the texts from SE91 anymore.

 

screenshot_10.jpg

 

There is only a small shortcoming. Once you identified a message to be relevant for your investigation, you actually want to set a break-point at the place where the message is raised. From SE91 you usually do a where-used ... etc.

Unfortunately the available debugger script does not list the message ID and number.

But no worries, here is how to add those two columns:

In SE38 just do a copy of the script '/BOBF/TOOL_DEBUGGER_SCRIPT_F' and in your own local Z* script you do the following adjustments:


screenshot_11.jpg

 

And look at that. In the debugger you get right away all the message IDs and numbers and texts of all the referenced messages of the eo_message object...

 

screenshot_12.jpg

 

By the way, the available script also handles other BOPF Framework objects, like eo_change.

 

Have fun saving time...


Viewing all articles
Browse latest Browse all 91

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>