Defining Conditions

Records within COBOL data files often contain data items that are tested for specific values, in a COBOL program's Procedure Division. In order for Relativity to test data items, they must be conditional variables, in that they have one or more 88-level COBOL items associated with it. The following FD shows two conditional variables, with a number of 88-level items associated with each.

88-level items may already exist in the COBOL source, in which case they will be present in the FD after import. If they are not, and you need to perform a certain action depending on the value of a conditional variable (for example, apply a certain record type), you must create the 88-level conditions manually.

Conditional variables and conditions are used in conjunction with record types. Using the FD example above, the 03 OF-ORDER-TYPE conditional variable has two 88-level items (CREDIT and CASH). These items will each have different values assigned to them, and in turn may be associated with different record types, one including credit card details and the other not. When OF-ORDER-TYPE is set to the same value as the 88-level item CREDIT, the credit card record type is used to represent that record.

88-level conditions can include separate values for evaluating true and evaluating false. When setting the values, you can manually enter alphanumeric characters or hexadecimal values, or you can select standard COBOL literals such as LOW- and HIGH-VALUES. Manually entered values can be a single value, a range of values, or a number of separate values where each is evaluated.

Once you have defined conditional variables and their required condition values, create some record types that specify the condition values in their record type filters (see Defining Record Types and Defining Record Type Filters), or use the conditions to produce null information within a table (see Defining Null Information).