Rules for Condition-Name Values
- The VALUE clause is required in a condition-name entry, and must be the only clause in the entry. Each condition-name entry is associated with a preceding conditional variable. Thus, every level-88 entry must always be preceded either by the entry for the conditional variable, or by another level-88 entry when several condition-names apply to one conditional variable. Each such level-88 entry implicitly has the PICTURE characteristics of the conditional variable.
- The condition-name entries associated with a particular conditional
variable must immediately follow the conditional variable entry.
The conditional variable can be any data description entry except:
- A level-66 item (RENAMES clause)
- A data item whose USAGE IS INDEX
- An item whose USAGE IS POINTER or PROCEDURE-POINTER.
- A condition-name can be associated with a group item data description
entry. In this case:
- The condition-name value must be specified as a nonnumeric literal or figurative constant.
- The size of the condition-name value must not exceed the sum of the sizes of all the elementary items within the group.
- No element within the group may contain a JUSTIFIED or SYNCHRONIZED clause.
- No USAGE other than DISPLAY may be specified within the group.
- Condition-names can be specified both at the group level and at subordinate levels within the group.
- The relation test implied by the definition of a condition-name at the group level is performed in accordance with the rules for comparison of nonnumeric operands, regardless of the nature of elementary items within the group.
IBM Extension
IBM Extension
- The VALUE clause is allowed for internal floating-point data items.
- The VALUE clause is allowed for DBCS items. Relation tests for DBCS data items are performed according to the rules for comparison of DBCS items.
- The VALUE clause is allowed for national items. Relation tests for national data items are performed according to the rules for comparison of national items.
- A condition-name can be associated
with a date, time, or timestamp item. In this case:
- The condition-name value must be specified as a non-numeric literal
- Each condition-name implicitly has the FORMAT characteristics of the conditional variable. Thus, any relation test involving this condition-name is performed in accordance with the rules for comparing items of class date-time.
- A THROUGH phrase can be specified when a conditional variable is of class date-time. In this case, the time or date of literal-1 must be less than literal-2.
End of IBM Extension
- A space, a separator comma, or a separator semicolon, must separate successive operands.
- Each entry must end with a separator period.
- The type of literal in a condition-name entry must be consistent with the data type of its conditional variable.