About flow types
The value that you select for the flow type of a flow node determines the other types of generation properties that the flow node possesses.
All three flow types share certain fundamental generation properties (such as Request Name, Program Name, Transaction ID, Generate Web Service Files, and others). The FEPI flow type and the Link3270 Bridge flow type have additional generation properties (such as Initial PFKey and Startup Transaction Data).
When you run the Generate Runtime Code wizard and it processes
a flow node, the wizard generates COBOL source code and control information
to implement how the flow is packaged and invoked, using the generation
properties that you specify in the flow node.
If the flow with which the flow node is associated is the main flow of a program, then the flow is created as an executable program or a web service.
- If the flow with which the flow node is associated is an invoked flow, then the flow is created as an invoked flow (see A flow).
The flow type of a flow indicates (or, depending on how you look
at it, is limited by) the invoke types of the invoke nodes contained
in the flow (see Table 1):
Note: The generation
properties editor enforces this rule by displaying
an error symbol
on
the icon for the node in the hierarchical tree in the left pane of
the editor area (see Error messages in the generation properties editor).
However, the flow editor does not display a warning message
if you introduce incompatible node types into a flow (because you
might have a valid reason for making the change).
on
the icon for the node in the hierarchical tree in the left pane of
the editor area (see Error messages in the generation properties editor).
However, the flow editor does not display a warning message
if you introduce incompatible node types into a flow (because you
might have a valid reason for making the change).| If the flow type of the flow is: | Then the types of invoke nodes that the flow can validly contain are: |
|---|---|
| Nonterminal |
|
| FEPI |
|
| Link3270 Bridge |
|
The main flow of your program can be of any flow type. However,
an invoked flow must have a flow type of either FEPI or Link3270
Bridge (see Table 2):
| If the flow is a: | Then the flow type of the flow must be: |
|---|---|
| Main flow |
|
| Invoked flow |
|
Moreover, only a nonterminal flow can invoke another flow (see Table 3):
- Thus, if a FEPI flow or a Link3270 Bridge flow is the main flow of a program, it must also be the only flow in the program.
- Also, this means that the maximum depth of invocation for flows is one level deep (because a Nonterminal flow can invoke only a FEPI flow or a Link3270 Bridge flow, and neither of those flow types can invoke another flow).
| If the flow type is: | Then can this type invoke other flows? |
|---|---|
| Nonterminal | Yes, it can invoke either of the following flow
types:
|
| FEPI | No |
| Link3270 Bridge | No |