Refer to documentation Implementation
The definition of a screen is made with the help of 2 tabs: the general tab for the definition of the transaction and a tab containing the formulas for the selection of records to process and tables to update.
Presentation
The header is used to identify the function.
Close
Fields
The following fields are present on this tab :
| This code identifies the system transaction to be launched. |
| Enter the description of the relevant record. This long description is used as a title in screens and reports. |
Close
Presentation
The general context linked to the system transaction is defined in this tab:
Close
Fields
The following fields are present on this tab :
Block number 1
| [object Object] |
| This title provides a description of the record. |
| An activity code is used to:
In this way, if the activity code is disabled, the marked element will not be useable, and the associated code (if any) will neither be generated nor can be activated. |
| This access code makes it possible to prohibit access to the current record for some users. As a matter of fact, if the field is completed, only the users having this access code with read rights (respectively write rights) can view (respectively modify) the concerned record. Execution right that can be attached to the access code that is used to authorize the execution of the system transaction. Taking into account the fact that this function is sensitive, it is advisable to enter an activity code and to carefully limit the number of users that have the execution right. |
| Define the principal table on which the transaction is going to be executed. |
Grid Linked tables
| Identify the tables linked to the principal table. |
| This field is defined as one or more calculated expressions separated by a semi colon. Each expression is evaluated, and the result used to identify the value of the key used to perform the join. When multiple joins are authorized, only the first elements of the key can be given. In the expressions, constants can be used, as well as fields coming from the tables previously defined in the link list. |
Grid Parameters
| Define the data type corresponding to the entered parameter. This is used to control the value by means of a table, if required. |
|   |
| Define the maximum number of characters that must be entered in order to save the parameter. |
| When the entry parameter is of the local menu type, the local menu number concerned is entered here. |
| This field defines an addition required for the definition of the data type, if required. In the case of a miscellaneous table, the addition defines the table number, for example. |
| Used to define a default value by means of a calculated expression can contain constants and variables. |
| A code for a control table can be entered in this field to carryout a specific validity control associated with the parameter defined in the system transaction. |
Close
Presentation
This tab is used to specify the lines of the joins browsed by selection criteria and to detail the updates carried out by the system transaction on these lines. This can be:
Close
Fields
The following fields are present on this tab :
Grid Selections
| This field is used to define the logical expressions to filter the records to be updated or to be deleted. It is possible to use the fields from the principal table, the linked tables and the variables defined in the launch parameters grid in the first tab (V1 to Vn). If the result of one of these expressions is false, the save will not be carried out. |
Grid Update
| Defines the table in which the operation must be carried out. |
| The operation carried out can be :
|
| Define the field where that is to receive the value (in modification or in creation). This field comes from the entry table on the line. |
| This formula is evaluated to give the value of the field to be assigned. Fields from online tables, constants as well as the V1 to Vn variables defined in the launch parameters grid in the first tab can be used in this formula. |
Close
The following fields are included on the window opened through this button : Block number 1
Block number 2
Close This button is used to directly execute the transaction. It is a system transaction utility. |
The following fields are included on the window opened through this button : Block number 1
Block number 2
Close This button is used to copy the transaction definition to another folder. Warning, it is necessary to validate the transaction in the destination folder. |
It is important to note that simultaneous modifications and duplications in the same transaction, provided that the declaration order is observed. For example, if the following lines are entered:
Table | Transaction | Field | Formulas |
TABLE1 | Modification | FIELD1 | EXPRESSION1 |
TABLE1 | Creation | FIELD2 | EXPRESSION2 |
TABLE2 | Creation | FIELD3 | EXPRESSION3 |
TABLE2 | Modification | FIELD4 | EXPRESSION4 |
TABLE3 | Modification | FIELD5 | EXPRESSION5 |
The algorithm applied is the following:
For [all the lines of the join concerned]
read the TABLE1 current line, Allocate FIELD1 and FIELD2, then create a lines TABLE1
read the TABLE1 current line, Allocate FIELD1 and FIELD2, then create a line TABLE1
Allocate FIELD4, then modify by re-writing the TABLE2 current line
Read the TABLE3 current line, Allocate FIELD5, then modify by re-writing TABLE3
In any case, a developer can view the processing generated by the validation. Its name is defined by the transaction code, prefixed by the WMAMI characters.
In addition to the generic error messages, the following messages can appear during the entry :
The length of a variable is controlled according to its type.
Type | Maximum length |
Title | 30 |
Short integer | 4 |
Long integer | 8 |
Characters | 250 |
Date | 4, 6 or 8 (authorized length) |
Decimal | 32 (for the integer and decimal section) |
The number entered corresponds to a message chapter and not a local menu.
The number entered does not correspond to an existing local menu.
It is not possible to update a table non-defined as the principal table or table linked in this transaction record.
The field must exist in the table dictionary in the table specified on this same line.
The dimension expressed for this field must not exceed that defined for this same field in the table dictionary.