Flow changes for Cases in flight
Business processes frequently change, and these changes can impact cases that are currently in progress in your Pega Platform™ application. These in-flight cases can become stuck or canceled without proper planning because of a deleted or modified step or stage. For example, assume you have a flow where a case goes from a Review Loan Request step to a Confirm Request step and a Fulfill Request step. If you remove the Confirm Request step during a process upgrade, what happens to open cases that are in that step?
Failure to consider open work objects while progressing through updated flows can result in problem flows, stuck work objects, assignments in error, orphaned assignments, and other errors.
Proper planning of your strategy for updating production flows means that you can take in-flight cases into account and seamlessly integrate the update.
Possible reasons for problem flows
Because flow rules hold assignment definitions, altering a flow rule can invalidate existing assignments. The following examples describe why a problem might occur in a flow:
- A step in which there are open cases is removed. This change causes orphaned assignments.
- A new step with the same name replaces an existing step. This change might cause a problem because flow processing relies on an internal name for each assignment shape.
- Wait points are removed or replaced in the flow, such as a subprocess or a Split-For-Each shape. These changes might cause problems because the system references their shape IDs in the active subflows.
- A stage is removed from a case life cycle, and there are in-flight cases in the removed stage. In-flight cases cannot continue the case life cycle.
Parent flow information that impacts processing
Run-time flow processing relies on flow information contained in assignments. If you change the configuration of an active assignment that is in a flow or remove the assignment altogether, you might experience issues. Critical flow-related assignment information includes:
- pxTaskLabel: The developer-entered text label of the assignment shape.
- pxTaskName: The shape ID of the assignment shape to which it is linked. For example, Assignment1.
- pyInterestPageClass: The class of the flow rule. For example, FSG-Booking-Work-Event.
- pyFlowType: The name of the flow rule. For example, Request_Flow_0.
Check your knowledge with the following interaction: