A work object being processed by a flow execution creates an
assignment (or attempts to create an assignment), but users are unable to
perform the assignment. The work object is stuck at that point in the
flow rule.
Remedying this issue often involves two separate tasks:
- Releasing the stuck object so that it can advance through the
business process. In a production setting, this may be urgent.
- Finding, understanding, and addressing the cause of the stuck work
object, so that changes can be made to prevent future
occurrences.
When examining rules that may be relevant to a stuck work
object, take care to select those that belong to the same RuleSets and
versions of the requestor (user or agent) who last updated the
work object. If you as a developer have a RuleSet list that contains
additional versions or additional RuleSets not available to the requestor
processing the flow execution, the underlying problem may not be
reproducible or may be easy to misdiagnose.
Show
all
How can a work
object become stuck?
At a high level, a struck work object usually indicates a flaw in
one or a few relationships among rules, work objects, assignments, or
data instances.
The PegaRULES database contains eleven sets of important
relationships among these four broad types of objects, suggested in
this diagram.
Many of these relationships may be valid at one time but for
various reasons become invalid later. Issues with relationships 6
— 10 often cause stuck work objects, in which an assignment
cannot be created, cannot be found, or cannot be completed. Issues
with relationships #1 — #5 can also cause stuck work
objects.
The relationships are:
#
|
Relationship
|
Examples
|
1 |
Rules reference other rules. |
Flow rules may call other flow rules. |
2 |
Rules may reference data instances (rare). |
Routing activities may identify an individual Operator ID or
workbasket. |
3 |
Data instances reference other data instances. |
Operators belong to a work group. |
4 |
Data instances reference rules (rare). |
Operators may have an associated skill rating. |
5 |
Work objects reference rules. |
Flow executions in progress are recorded in the work
object. |
6 |
Work objects reference data objects. |
A work object identifies the Operator ID of the operator who
created it. |
7 |
Assignments reference rules. |
Each assignment identifies the flow rule that contains the
assignment shape (task) that created the assignment. |
8 |
Assignments reference data objects. |
Each assignment references a workbasket or appears on the
worklist of an operator. |
9 |
Work objects reference assignments. |
A work object structure contains a list of assignments. |
10 |
Assignments reference work objects. |
A work object ID is part of the key to an assignment. |
11 |
Work objects reference other work objects. |
A covered work object links to the cover object. |
1. Flow problems
are not monitored or reported
A built in flow named Work-.FlowProblems provides
useful diagnostics for debugging applications. Assign someone to take
advantage of it.
Symptom
Flow problems occur, but are not detected by the operations staff
until a worker notices and reports them.
When reviewing a work object, error messages appear rather than a
flow action form.
Action
By default, when Process Commander detects a stuck work object, the
standard flow named Work-.FlowProblems starts for a user
named administrator@org.com, where org.com is the
organization to which the operator belongs.
Create an operator named [email protected] for each
organization, and monitor the worklist of that operator.
If your system is set up to send email, enter a valid email
address into that Operator ID instance. Alternatively, include in your
application a custom activity that overrides the standard activity
Work-.ToProblemFlowOperator to route assignments created
by this flow to users who review their worklist often. Different
applications can use individual activities (in different RuleSets) to
send problems to different worklists.
2. An operator or
workbasket is missing
A flow (or an activity referenced in the flow) may reference an
Operator ID or workbasket that does not exist in the current system.
(Someone may have deleted this Operator ID, or it may exist on another
Process Commander system from which a ZIP archive was imported.)
Symptom
The ProblemFlow error is:
Unable to open assigned'
Data-Admin-Workbasket record
or
Unable to open assignee's
Data-Admin-Operator-ID.
Action
An assignment cannot be created because a routing activity
references a workbasket or Operator ID that cannot be found. The name
of the missing operator or workbasket is shown.
- If the operator or workbasket needs to be created, create the
operator or workbasket.
- If the operator or workbasket name is misspelled or was created
with an incorrect name, update the router activity (or the
parameters sent to the activity by the Router shape on the flow
rule) to the correct value.
- Complete this flow action to resume flow execution.
3. Missing service
level
Symptom
An assignment instance refers to a service level that cannot be
found.
Action
The service level existed when the assignment was created and when
the flow rule was last validated.
- Identify the name of the missing service level rule.
- If the service level rule was deleted after the assignment was
created, restore it.
- If the service level rule exists, check to confirm that it is
available and not blocked. Check the RuleSet and version. Confirm
that the operator attempting to process the assignment has a
RuleSet list that includes this RuleSet and version.
- After addressing the problem, open the assignment again.
4. Missing flow
rule
Symptom
An assignment instance refers to a flow rule that created it, but
cannot now be found.
Action
- Identify the name of the missing flow rule.
- If the flow rule was deleted after the assignment was created,
restore it.
- If the flow rule exists, check to confirm that it is available
and not blocked. Check the RuleSet and version. Confirm that the
operator attempting to process the assignment has a RuleSet list
that includes this RuleSet and version.
- After addressing the problem, open the assignment again.
5. No paths from a
Fork shape
Symptom
Execution of a flow has reached a Fork shape, but none of the
outgoing connectors can be used to proceed.
Action
A fork shape is a dead end. Properties in the work object cause
none of the outgoing connectors to be valid.
- Review the connectors leading from the fork shape.
- Examine the relevant properties in the work object or
assignment.
- Update the flow to allow the work object to advance, or modify
the processing so that the property values can no longer
arise.
6. Missing task in
flow rule
Symptom
An assignment instance refers to an assignment task (shape) in a
flow rule. The task cannot be found.
Action
A task with that name was present in the flow rule that was used to
create the assignment instance.
- Identify the name of the missing task (Assignment shape).
- If the flow was modified in a way that caused the assignment
task to be deleted (or renamed?) after the assignment was
created, update the flow to include that shape, at least
temporarily.
- After addressing the problem, open the assignment again.
7. Missing When
rule
Symptom
A flow rule references a when rule that cannot be found.
Action
The when rule existed earlier, at the time the flow rule was last
validated, but does not exist now.
- Identify the name of the missing when rule.
- If the when rule was deleted after the assignment was created,
restore it.
- If the when rule exists, check to confirm that it is available
and not blocked. Check the RuleSet and version. Confirm that the
operator attempting to process the assignment has a RuleSet list
that includes this RuleSet and version.
- After addressing the problem, choose
Retry last
step
.
8. Missing
assignmentv5.4 proj-1218
Symptom
A flow rule references an assignment that cannot be found.
Action
The assignment existed when the flow rule was last validated, but
does not exist when the flow is run again. This condition is usually
the result of a missing .pxAssignmentKey value in page
.pxFlow. Click Restore This Assignment, which runs the
flow again and generates a new assignment.
When a work object does not have an assignment, the item does
not appear in your worklist.
Flow errors and assignments in error
To review or address flow errors, select the Flow Errors gadget on the Processes landing page, using > Processes and Rules > Processes > Flow Errors.
To review or address assignments in errors, select > Process & Rules > Tools > Work Admin > Worklist Assignment Errors (or Workbasket)
Troubleshooting