Patent ID: 8341596

Claim:
A method of controlling a re-execution of a rule branch in a rule represented by a graphical flowchart in a manufacturing execution system, the rule branch including a set of steps, and the method which comprises: at engineering time, designing the flowchart to comprise a set of interconnected steps denoting a flow of activities to be executed, at run time, by an execution engine; at developing time, defining an additional step in the form of a recycle step, the recycle step including a conditional expression to be customized, at engineering time, and having a result, each time the recycle step is executed at run time, to be used by the execution engine to decide the rule branch; the recycle step further including an internal counter keeping track, at run time, of a current execution cycle; each time the recycle step is executed at run time, setting a status of the recycle step to “active” status with the execution engine until a set of steps of the rule branch that follows is executed, and then setting the status of the recycle step “non-active;” at run time, waiting with the execution engine with any request to execute a given recycle step that is in “active” status until the given recycle step is in a “non-active” status; at run time, when the execution engine executes a given recycle step, setting a status of the set of steps of the rule branch that follows to “not yet executed” status if a status thereof was “already executed;” at run time, when the execution engine executes a given step that is not a recycle step, setting the status of the given executed step to “already-executed” status and ignoring the execution of steps whose status is “already-executed;” at engineering time, designing a flowchart rule comprising a set of interconnected steps containing at least one recycle step; and at run time, executing with the execution engine the interconnected step set containing the at least one recycle step of the flowchart rule.