Today I would like to share 1 helpful approach for quick BOPF debugging and root cause analyses with an example on SAP Transportation Management.
While working with SAP TM, people sometimes need to investigate an unexpected behavior of one or another Node instance. Eg, 1 Item was deleted or the Location ID was changed.
And there is a simple trick. If you go into BOBF transaction, behind every Node you can find its buffer class. Usually, it is /BOBF/CL_BUF_SIMPLE.
Go into this class and find the method “modify”.
This method consumes all your transactional modifications and applies them to the buffer tables.
Find the change mode, that you want to track and put a breakpoint:
Right-click on breakpoint label -> Create Breakpoint condition:
Specify the instance key of the item (or another Node), which you want to track:
A breakpoint condition can be quite sophisticated, with checking data content, like STOP location (STOP is a BOPF Node in SAP TM).
But in this case, you need to specify the Node key first, to make it work only for STOP nodes:
Now, green button and F8. The watchpoint will stop, once you meet your condition.
Check the call stack and find the coding, which has triggered your modification:
In my example this is Action class /SCMTMS/CL_TOR_A_UPDATE_ITEMTR.
I hope, it’ll help to save your time.