Level 2 generation in SQL access mode
Note: When the logical entity has a default logical server, the instructions related directly to the entity will automatically be assigned to the logical server, except in the SFTKYS_PROCESS sections.
In the example below, <S1> is the default logical server of ENTITY1, and <S2> is the default logical server of ENTITY2.
Only the lines in purple refer to the instructions generated by level 2 generation.
Typical structure
|
* For the window |
|
BEGIN_STD_DFL |
<S1> |
CHAIN_SQL ENTITY1 *COND(ACCESS_FIELD1=:HOST_VAR1 AND ....) |
<S1> |
BEGIN_STD ENTITY1 |
<S1> |
< generation of the IE-class management rules |
<S1> |
for the ENTITY1 entity> |
<S1> |
PRESENT ENTITY1 |
<S1> |
END_STD |
|
BEGIN_STD |
|
< generation of the instructions to reset to blank or zero for |
|
the fields that are not linked with the non-list data flow > |
|
VAR_X1 = *BLANK |
|
VAR_X2 = 0 |
<S1> |
< generation of the IP-class management rules for |
<S1> |
non-list fields > |
<S1> |
< generation of CA-class management rules for non-list fields > |
<S1> |
ZPROP_X1 = PROP_X2 * PROP_X3 |
|
END_STD |
|
END_STD_DFL |
|
|
|
* For a list |
|
BEGIN_STD_DFL |
|
CLEAR_LST <window.object:list_prop> |
<S2> |
LOADING_LST LDG_ENTITY2 |
<S2> |
BEGIN_STD ENTITY2 |
<S2> |
< generation of IE-class management rules for the ENTITY2 entity> |
<S2> |
PRESENT ENTITY2 |
<S2> |
END_STD |
<S2> |
BEGIN_STD |
<S2> |
< generation of the instructions to reset to blank or zero for |
<S2> |
the fields that are not linked with the list data flow > |
<S2> |
VAR_Y1 = *BLANK |
<S2> |
VAR_Y2 = 0 |
<S2> |
< generation of IP-class management rules for list fields > |
<S2> |
< generation of CA-class management rules for list fields > |
<S2> |
ZPROP_X1 = PROP_X2 * PROP_X3 |
<S2> |
END_STD |
<S2> |
INSERT_ELT <window.object:list_prop> |
<S2> |
END_LOADING_LST |
|
END_STD_DFL |
Note:
As regards IE, IP and CA-classes management rules, the $PROP (properties) will be replaced by the file field guide words.
As regards the initialization of variables, the following rules apply:
Blank or zero initialization:
Input/Output fields not used by the data flow and not keys of a view or a load.
Click below for further information about: