Position 23 (Type of Data Structure)

Start of change
Free-Form Syntax
S
PSDS keyword.
U
*AUTO parameter for the DTAARA keyword.
End of change
This entry is used to identify the type of data structure being defined. If a data structure is not being defined, this entry must be left blank.
Entry
Explanation
Blank
The data structure being defined is not a program status or data-area data structure; or a data structure is not being defined on this specification
S
Program status data structure. Only one data structure may be designated as the program status data structure.
U
Data-area data structure.
RPG IV retrieves the data area at initialization and rewrites it at end of program.
  • If the DTAARA keyword is specified, the parameter to the DTAARA keyword is used as the name of the external data area. If the name is a variable, the value must be set before the program begins. This can be done by:
    • Passing the variable as a parameter.
    • Explicitly initializing the variable with the INZ keyword.
    • Sharing the variable with another module using the IMPORT and EXPORT |keywords, and ensuring the value is set prior to the call.
  • If the DTAARA keyword is not specified, the name in positions 7-21 is used as the name of the external data area.
  • If a name is not specified either by the DTAARA keyword, or by positions 7-21, *LDA (the local data area) is used as the name of the external data area.