SAP Workflow
module normally works and runs very smoothly. However, if you
do run into some problems or have questions, then this FAQs may help in
some ways.
Why is my workflow not starting?
Some possible reasons/solutions:
If started by an event:
-
run SWU_OBUF and check transaction SWU3 for problems
-
check that the linkage between the event and the workflow
exists in transaction SWE2 and is activated
-
check transaction SWEL to see if event was created / gets
created (may need transaction SWELS to turn SWEL on)
-
test if creating the event manually in SWUE triggers the
workflow
-
check if there is a start condition that isn’t being satisfied
-
check if the event is in a queue (if event queueing is turned
on, see transaction SWEQADM)
-
check WF-BATCH in transaction SU01, see if all is well (e.g.
password not expired)
If started directly (e.g. with function module SAP_WAPI_START_WORKFLOW;
not recommended if it can be avoided):
-
run SWU_OBUF and check SWU3 for problems
-
check if workflow has been set to General Task
Why is my workitem going to all users?
This normally happens when
-
A task has been set to General Task and
-
the agent assignment fails to return an agent (or hasn’t
been set) and
-
the “Terminate if rule resolution has no result” box has
not been checked
This is usually fixed by checking the “Terminate if rule
resolution has no result” box
Why is this user receiving this workitem, when he shouldn’t?
Some possibile reasons/solutions:
-
run SWU_OBUF and check transaction SWU3 for problems
-
the task has been set to General Task, no agent was determined
and the “Terminate if rule resolution has no result” box was not checked
so the workitem is going to every user
-
the agent determination is faulty
-
the user has been set up as a workflow substitute for another
user in table HRUS_D2
-
the user is actually receiving an email, not a workitem,
and the user has been setup as an email substitute in table SOSU
Why is this user NOT receiving this workitem, when he
should?
Some possible reasons/solutions:
-
run SWU_OBUF and check transaction SWU3 for problems
-
the task has not been set to General Task
-
the agent determination is faulty
-
The user has a worflow substitute set up for him in table
HRUS_D2
-
the user is actually expecting an email, not a workitem,
and the user has an email substitute set up for him in table SOSU
-
the user has been listed as an Excluded Agent for that task
Why is my workflow stuck / hanging?
Some possible reasons/solutions:
-
run SWU_OBUF and check SWU3 for problems (e.g. SWWDHEX or
SWWERRE not running)
-
check for any shortdumps in transaction ST22
-
if a method is hanging in the background, check in transaction
SWO1 that it isn’t mistakenly marked as “Dialog”
-
if the method is a Dialog method then check the agent hasn’t
been set as WF-BATCH
-
check that WF-BATCH has SAP_ALL
-
check if there is an error handling problem, especially if
a method calls a function
How come my workflow works fine in DEV but not in QA?
(or PROD)
Some possible reasons:
-
run SWU_OBUF and check SWU3 for problems
-
user WF-BATCH may have problems, e.g. expired password, no
email address supplied
-
custom tables used for agent determination not filled in
the same way
-
a different version of the workflow is being used
How do I get a background step to be run as a certain
user, instead of WF-BATCH?
Try having that user run a dialogue step beforehand, with
advance with dialogue.
How can I find out which users are holding up the workflows?
Look in the workflow logs. For a large number of workflows
or workflow instances, create a report which calls function module SAP_WAPI_WORKITEM_RECIPIENTS.
If you combine it with function module SAP_WAPI_GET_WORKITEM_DETAIL
you could make a report which shows all users that various workflows are
waiting for.
How can I look inside another user’s SBWP workflow
inbox?
Transaction SWI5 (assuming you have sufficient privileges)
Where is this workflow started?
Use transaction PFTC_DIS to see if the workflow has a
starting event.
If not, then the answer is beyond the scope of this brief
FAQ, but you could try a where-used on function module SAP_WAPI_START_WORKFLOW.
If there is a starting event, check in transaction SWE2
that the event is actually linked to the workflow and, if so, try doing
where-used on function modules SAP_WAPI_CREATE_EVENT and SWE_EVENT_CREATE
(look for Z programs). |