◷ Reading Time: 3 minutes
During debug and simulation of execution in any logic document, there are scenarios you need to continue the run until execution reaches a specific point. Those points are called Breakpoints.
Breakpoints allow you to mark different parts of a model to pause the execution at those marks
Let’s say you have the Flow model below and you need to investigate some values right after the loop, on the node called SubFlow2:
By right-clicking on a node of the Flow, a context menu appears, and you can see an “Add a Breakpoint” option from the menu:
Once selected, a red pin appears on the node:
To manage the Breakpoints, you can go to the menu
View --> Windows --> Breakpoints and it will appear at the bottom of the FlexRule Designer:
This window allows you to:
- Enable/disable breakpoints
- Remove all the breakpoints
Now when you Debug the mode, the execution continues without any need for your interaction until it reaches the breakpoint. In this example (SubFlow2):
In the above example, if you didn’t have the Breakpoint and started debugging, you would have had to click Debug->Next Step all the way through until you reached the point where you needed to be. That becomes much harder if, for example, you have a loop of many (e.g., thousands of items before you reach where you need to be).
While debugging, if you select menu Debug->Next Breakpoint or from the toolbar:
Execution continues until it reaches the next breakpoint or the run is finished.
Breakpoints are supported across different documents:
- Decision Requirements Diagram (DRD)
- Information Requirement Diagram (IRD)
- Flow (i.e., Generic flow and Workflow)