cancel
Showing results for 
Search instead for 
Did you mean: 

SRM Workflow debugging

Sm1tje
Active Contributor
0 Kudos

Hi all,

I'm working on a SAP SRM implementation and I am facing the following problem. I have to determine the Approver for shopping cart items, for which I'm using BAdI BBP_WFL_APPROV_BADI. This BAdI is called when I order the items in my shopping cart. No problem there yet, but I want to debug this BAdI now and again. How to do this?

BREAK-POINT and break sy-uname are ignored, programming an endless loop and enter via SM50 doesn't work either. Can anyone tell me how to do this.

Kind regards,

Micky.

P.S. I know next to nothing about workflow!!

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Have you tried to set system debbuging and/or update debbuging?

Sm1tje
Active Contributor
0 Kudos

Yes, I even set the flag for external debugging (HTTP), but this results in an error when adding items to the shopping cart.

Former Member
0 Kudos

Hi,

To debug on internal ITS:

-Set external debug point in your code (as you've done).

-In the service file of the ITS service you use set the parameter ~generatedynpro to 1 (in SE80 if you use external ITS, in SICF for internal ITS).

You'll get the debug screen in the webgui ....

Have fun.

Regards.

Vadim

Sm1tje
Active Contributor
0 Kudos

Vadim,

this sounds good, but could you tell me in bit more detail where to set this parameter. I'm not that familiar with transaction SICF.

Thanks in advance.

Kind regards,

Micky.

Former Member
0 Kudos

Hy Micky,

Go to SICF on your ITS service (for example bbpsc03) when you double click a popup appears, click on the "option" button on this popup window(I don't have a SAPGUI here but I'm quite sure it is directly on the first tab of the poipup window).

There you'll get the its parameters (all with ""), add "generatedynpro" and set it to 1.

Regards.

Vadim

Sm1tje
Active Contributor
0 Kudos

Hi Vadim,

I did everything you told me (thanks for the advice, again), but unfortenately I keep getting the same 'short-dump' (ITS_TEMPLATE_NOT_FOUND).

The following message appears in the browser :

Error when processing your request

What has happened?

The URL http://sapbwpr.rivm.nl:8000/sap/bc/gui/sap/its/bbpsc02/~flNUQVRFPTEzNTI1LjAwNS4wNC4wMQ== was not called due to an error.

Note

The following error text was processed in the system SRD : Error ITS_TEMPLATE_NOT_FOUND occured. P1=SAPMSSY3 P2=131 P3=bbpsc02 P4=BBPSC01

The error occurred on the application server sapbwpr_SRD_00 and in the work process 1 .

The termination type was: RABAX_STATE

The ABAP call stack was:

Form: IF_EX_BBP_WFL_APPROV_BADI~GET_REMAING_APPROVERS of program ZCL_IM_SRM_WFL_APPROVAL=======CP

Form: IF_EX_BBP_WFL_APPROV_BADI~GET_REMAING_APPROVERS of program ZCL_IM_SRM_WFL_APPROVAL=======CP

Form: IF_EX_BBP_WFL_APPROV_BADI~GET_REMAING_APPROVERS of program CL_EX_BBP_WFL_APPROV_BADI=====CP

Function: BBP_WFL_DIN_APPR_BY_RULE_GET of program SAPLBBP_WFL_DIN

Function: BBP_WFL_DIN_APPR_FINALLIST_GET of program SAPLBBP_WFL_DIN

Function: BBP_WFL_DIN_VIRTPAR_GRAPH_GET of program SAPLBBP_WFL_DIN

Function: BBP_PDH_WFL_PARAM_APPLET_FILL2 of program SAPLBBP_PDH_WFL

Form: SIMULATE_APPROVAL_PBO of program SAPLBBP_PDH_WFL

Module: SIMULATE_APPROVAL of program SAPLBBP_PDH_WFL

What can I do?

If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system SRD in transaction ST22.

If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server sapbwpr_SRD_00 in transaction SM21.

If the termination type was ERROR_MESSAGE_STATE, then you can search for more information in the trace file for the work process 0 in transaction ST11 on the application server sapbwpr_SRD_00 . In some situations, you may also need to analyze the trace files of other work processes.

If you do not yet have a user ID, contact your system administrator.

Error code: ICF-IE-http -c: 100 -u: OESTRICHM -l: E -s: SRD -i: sapbwpr_SRD_00 -w: 0 -d: 20050923 -t: 084021 -v: RABAX_STATE -e: ITS_TEMPLATE_NOT_FOUND

HTTP 500 - Internal Server Error

Your SAP Internet Communication Framework Team

So, like the message says, I looked at ST22 and the above mentioned short-dump is generated (ITS_TEMPLATE_NOT_FOUND).

Any idea?

Kind regards,

Micky.

Former Member
0 Kudos

This error message is generated by the system because the transaction is stopped at your break point, and the ITS cannot find a template corresponding to the debugging screen.

That is what '~generatedynpro' parameter is maint for.

If you correctly set the parameter in the SICF service, it should work ... (I always did like that during my projects).

-Check the spelling of the parameter

-Check you defined a external http break-point

-Ask your administrator to restart the system

Good luck.

Vadim

Answers (2)

Answers (2)

Former Member
0 Kudos

Guys,

This is wonderful info...keep it up

Former Member
0 Kudos

Hi Micky,

Did you manage to resolve BBP_WFL_APPROV_BADI issue ?

If not, please let me know. I may help you on this.

Thanks and Warm Regards.

Pras

Former Member
0 Kudos

Hi all,

I finally successed!

I put the parameter to all related ITS for Shoping cart.

bbpsc01, bbpsc02,..

Thank you Vadim.

Regards,

Danijela Zivanovic

Message was edited by: Danijela Zivanovic

Former Member
0 Kudos

Hi Danijela,

It would have been more efficient to only put the parameter in service bbpglobal (it is then applied to all SRM services).

Regards.

Vadim

PS: please don't forget to reward the answers you got.

Former Member
0 Kudos

Hi Pras,

I need some help in Debugging n-step BAdI workflow.

I'm new to SRM4.0,worked on SRM2.0 and R/3workflows before.

1.How can I debug BAdi based workflow.

2.what are the things to be set in SICF and if any user attributes..

3.Can i debug the workflows on line and find the approvers.OR should i check workflow log (container data..etc..)as in earlier versions

Former Member
0 Kudos

Hy Ranganatha,

Please have a look upper in the posts, I described how to activate the debugging function: That will open the debug screen in your Web Browser.

1. Set an external HTTP break point in the BADI

2. In the service file of the ITS service you use set the parameter ~generatedynpro to 1 (in SE80 if you use external ITS, in SICF for internal ITS). If you don't know which service you use set the parameter in BBPGLOBAL service.

PS: Micky Itwould have been kind of you to reward points for the answer I provided

Regards.

Vadim

Former Member
0 Kudos

Thanks Vadi,

I got some more help from SAP-WUG..

For the benefit of all ....

To debug the SRM BADI workflows the critical routines are:

BBP_WFL_DIN_CONTAINER_SET

BBP_WFL_DIN_CONTAINER_GET

Your BADI

If you also want to debug through the save process, you can set a breakpoint in function module BBP_PDH_WFL_DB_UPDATE and set parameter IV_IN_DIALOG to X

diegohs
Active Participant
0 Kudos

Vadim,

Quick question: 😃

- I cant find in transaction SICF where's the BBPGLOBAL service =( (Internal ITS)

Does it have another name ? Could you share with me the path to that service or its equivalent ?

Thank you !

Regards,

Diego