Rational Developer for System z

Creating an Invoke flow node directly from an existing flow

This topic describes how to create an Invoke flow node directly from an existing flow.

General information

Restriction: Note the three following restrictions:
  • An Invoke flow node is supported only where a nonterminal flow (a flow containing Invoke nonterminal nodes) invokes a terminal flow (a flow containing Invoke screen operation nodes.)
  • The service flow project tools do not allow you to create a recursive invocation of a flow, that is, a flow invoking itself, either directly or through intermediate calls. If you attempt to add an Invoke flow node that would create a recursive call, then the flow editor does not allow the attempt to succeed. When you click OK or complete the drag function, the flow editor does not add the new Invoke node, but does not display an error message.
  • Invoked flows are supported only in the CICS® Service Flow Runtime environment (see Which nodes are valid in the supported runtime environments).

The Add Subflow menu selection or, alternatively, the corresponding drag feature, allows you to create an Invoke flow node directly from an existing flow.

When you create an Invoke flow node directly from an existing flow, the flow editor:
  1. Creates an Invoke node and configures it so that it will invoke the flow.
  2. Associates the Receive node of the flow with the input terminal of the node.
  3. Creates an output terminal on the node for each Reply and Throw node in the flow.
  4. Names the node with the flow name.
  5. Adds to the lower right corner of the node icon a flow symbol to indicate that the node is now an Invoke flow node:
    Invoke nonterminal node
Note: The contents of the flow are not copied. Rather, the Invoke flow node references the external flow. To view the referenced flow, double-click on the Invoke flow node. (You can also open the referenced flow in the usual way from the EST Project Explorer.)
To create an Invoke flow node from an existing flow, you can either:
  • Use the Add Subflow menu selection; or
  • Drag a flow from the EST Project Explorer to the flow editor canvas; or

Using the Add Subflow menu selection

To use the Add Subflow menu selection:
  1. In the flow editor, right-click anywhere over a blank area of the canvas, then select Add Subflow.
    Note: Alternatively, you can select Flow > Add Subflow on the main menu of the workbench.
  2. The Select Flow window opens. The left pane of the Select Flow window shows a filtered version of the EST Project Explorer that includes the following artifacts:
    Type of artifact: From which types of folder and subfolder: From which service flow projects:
    • All flows
    Flows folders
    • The service flow project to which the flow belongs.
  3. In the Select Flow window:
    1. Expand the service flow project to which the opened flow belongs.
    2. Expand the Flows folder.
    3. Select the flow from which you want to create an Invoke flow node.
    4. Click OK to close the Select Flow window.
  4. The flow editor creates the Invoke flow node.

Using the drag feature

To drag a flow:
  1. In the EST Project Explorer:
    1. Expand the service flow project containing the flow that you have opened in the flow editor.
    2. Expand the Flows folder.
    3. Select a flow.
  2. Drag the flow to the flow editor canvas.
  3. The flow editor creates the Invoke flow node.

Feedback