It is common that sometimes users of PSM (Planning Service Manager) engine into the APO environment needs to debug it. However, in case Parallel Processing is active in the Process Profile of the corresponding service, the breakpoints set will not be reached.
This occurs because the Parallel Processing carries the execution in a random Work Process of another server different than the one you are logged in.
In order to avoid changing it every time in the Process Profile I will give a tip to change it during the runtime of debugger.
- In SE80 transaction, search for Function Group /SAPAPO/PE_BAS:
- Expand Classes > LCL_PLANNING_SERVICE_MANAGER > Methods Implementations:
- Search for and double-click Method EXECUTE_PB_EXEC_INT:
- Set a breakpoint in the following IF clause:
- Once you execute the PSM through transaction /SAPAPO/PE_RUN you will reach the breakpoint. By the time you reach it you have to double click on the local variable of the second line (LV_PRL_PRC) and clear its value ‘X’, this will deactivate the Parallel Processing only for this execution. Afterwards you can let the PSM run and your application breakpoints will be reached.
I have dealt with some cases in which the user was trying to reach a breakpoint set into a BAdI and the same user was not able to reach the BP due to this feature. This may be useful for such cases.