Workflow problems? Read this first!
Attention SAP Business Workflow fans!
If you are having a SAP Workflow problem, please take a few minutes to do these simple checks.
It could save you (and us) a lot of time. Almost every day we at the SAP Business Workflow forum
get a lengthy thread describing bizarre errors which leave us scratching our heads until it’s revealed on page 3
that, oh, WF-BATCH only has the SAP_NOOB role or that, oops, the Deadline job isn’t running in SWU3.
After you have checked and tried all of these suggestions, please feel free to post your question
– we’re always keen to see interesting new problems that we may well encounter ourselves next week.
Please indicate that you have made these basic checks. Let me know with a Like or a Comment if
this document did indeed solve your problem.
I’ll keep updating this document with more checks as time goes on. Suggestions are very welcome!
I will try to put the checks in order of usefulness.
This is not a FAQ (Frequently Asked Questions), more like an FPS (Frequently Provided Solutions).
I’ll keep it brief because you have a problem to solve.
This solves the most problems of all, especially after a change or a transport. Try it, it can’t hurt.
Now try again.
2. General Task
Many people set Decision Tasks to General Task but this may not get transported with the task, depending
on your system settings. Result: nobody is receiving that workitem. Compare the source and target system.
One way to check for General Task: transaction PFTC_DIS, enter TS number
Click on the spectacles then Additional data > Agent assignment > Display
3. ST22 – short dumps
Always worth checking for shortdumps in transaction ST22 if you’re having strange problems, especially a background workflow step staying in status “In Process”. Look for user WF-BATCH.
4. WF-BATCH settings
It’s amazing the variety of problems you can get if WF-BATCH doesn’t have full privileges. Do everyone a favour and check that it has SAP_ALL. One way to do this is by looking in transaction SU01D for user WF-BATCH and check the Profiles tab:
(Update: Thanks to Colleen (see comments below) I now know that SAP_NEW is *not* necessary. So please ignore that in the screenshot)
If you don’t have access to SU01D then have cheeky look in SE16 at table UST04 where BNAME = ‘WF-BATCH’ .
While you’re looking at WF-BATCH, check if it has an Output Device set (SU01D, tab Defaults, or table USR01 field SPLD). No need to panic if it’s not set but worth trying if you’re stumped. Here’s a blog Sue K wrote about how that setting can really ruin your day:
5. SU53 – authorization problems
This is a general SAP tip that also applies to workflow. If you’re having problems, check transaction SU53 to see if your userid is missing some necessary authorizations. It shows the most recently failed authorization checks so you can cut & paste it and send it to your friendly SAP Security gal or guy.
6. SWI1 – workflow log
If your workflow isn’t doing what you want it to do then you should, of course, check the workflow log (transaction SWI1). How many times have I had to say that… The amount of information is amazing, you can (almost) see everything that happened. For the best results, make sure you go to the Chronological Log in the View With Technical Details :
Be wary of the Graphical Log, it can’t be trusted to be entirely accurate – and it gives very little information. If there’s an error message in the Chronological Log and it’s a bit vague then always try Extras > All Errors
(see top of picture, above).
7. SWU3 – the background jobs
At transaction SWU3, make sure the necessary workflow background jobs are running.
Under “Maintain Runtime Environment” you should see at the very least:
If you don’t have access to SWU3, you can also look in transaction SM37 for SWWERRE and SWWDHEX (deadlines).
If these jobs are not running then your workflow deadlines are useless and a temporary error could bring your workflows to a halt.
8. Don’t forget US
A very frequent solution to posted problems is a suggestion to check if the “US” prefix was forgotten when specifying a userid as a (dynamic) workitem recipient.
9. The bindings, always check the bindings.
Many problems are caused by incorrect bindings, especially between the starting event and the workflow. Look at each of your bindings carefully, to make sure they are doing what you want and none have been missed. Also check that each container element has been correctly specified as Import, Export and/or Multiline. Make sure the dataypes match as well, on each side of the binding. You are given a lot of freedom to get it wrong.
To be continued…