Whenever fields are declared in a FIELDS parameter they can have various attributes associated with them. This applies equally to the FIELDS parameter of an I/O command such as FETCH, DISPLAY or UPRINT and to the FIELDS parameter of a GROUP_BY, DEF_LIST, DEF_HEAD, DEF_FOOT, DEF_LINE or DEF_BREAK command.
Attributes assigned to fields in expandable groups are ignored. Refer to Special Considerations for Expandable Groups for details.
When a field in a FIELDS parameter is to have attributes associated with it, it must be individually enclosed in parenthesis with its attributes. For instance consider the following, where a1 … a7 are the special attributes assigned to field #ORDLIN:
REQUEST FIELDS(#ORDLIN #PRODUCT)
or the identical commands:
GROUP_BY #ORDERLINE FIELDS(#ORDLIN #PRODUCT)
REQUEST FIELDS(#ORDERLINE)
If the field #ORDLIN is to be assigned some special attributes, then the commands would have to be modified like this:
REQUEST FIELDS((#ORDLIN a1 a2 a3 a4 a5 a6 a7) #PRODUCT)
GROUP_BY #ORDERLINE FIELDS((#ORDLIN a1 a2 a3 a4 a5 a6 a7)
#PRODUCT)
REQUEST FIELDS(#ORDERLINE)
Up to 7 special attributes may be assigned to any field in a list or group.
Attribute Notes
Attributes assigned to fields in expandable groups are ignored.
In this example, the attributes of field FA001 in the expandable group #XG_001 are ignored in the REQUEST command:
GROUP_BY NAME(#XG_001) FIELDS((#FA001 *BLUE *BL) (#FA002))
GROUP_BY NAME(#XG_002) FIELDS((#XG_001) (#FA003))
REQUEST FIELDS(#XG_002)
Attributes assigned to expandable groups within a list or another expandable group are also ignored.
In this example, the attributes assigned to the expandable group #XG_001 in the REQUEST command are ignored:
GROUP_BY NAME(#XG_001) FIELDS((#FA001) (#FA002) (#FA003))
REQUEST FIELDS((#XG_001 *BLUE *BL))
Attributes assigned to individual fields in a field list, which include expandable group entries are acknowledged.
In this example, only the attributes assigned to field #FA005 in the REQUEST command are acknowledged:
GROUP_BY NAME(#XG_001) FIELDS((#FA001 *BLUE *BL) (#FA002))
GROUP_BY NAME(#XG_002) FIELDS((#FA003 *BL) (#FA004))
REQUEST FIELDS((#XG_001) (#XG_002) (#FA005 *BLUE *BL))
Refer to these topics for a list and examples of special attributes that can be used with a field:
13.4.2 Field Conditioning Attributes
13.4.3 Field Display Attributes
13.4.4 Field Identification Attributes
13.4.5 Field Position Attributes
13.4.6 Hidden Field Attribute and the Select Field Attribute