How Enform Handles "Non-Contributing" Record Descriptions - Tandem ENFORM 058057 Reference Manual

Data management library
Table of Contents

Advertisement

Statements
LINK Statement
Note
4–28
ENFORM uses these rules to determine whether your query specifications contain
legal links. (Unless otherwise stated, the word link applies to a link established by a
WHERE clause, a LINK statement, or a LINK OPTIONAL statement.) These rules are:
1.
A record description on the right side of a LINK OPTIONAL statement must not
be linked back to the record description on the left side of the same LINK
OPTIONAL statement.
2.
A given record description must not appear on the right side of more than one
LINK OPTIONAL statement. A record description appears on the right side of
more than one LINK OPTIONAL statement when you:
specify the same record description on the right side of two or more LINK
OPTIONAL statements.
specify a link (either with a LINK statement or a WHERE clause) between two
record descriptions, both of which appear on the right side of a LINK
OPTIONAL statement.
When checking your query for violations of these rules, ENFORM ignores any links (initiated by either a
LINK statement or a WHERE clause) that reference the same record descriptions as referenced in a LINK
OPTIONAL statement. In effect, ENFORM "cancels" any other link between the record descriptions when
determining the legality of the links. ENFORM ignores these links only when checking for violations of the
LINK OPTIONAL rules. After ENFORM determines that all the links in your query are legal, ENFORM
uses each LINK statement and WHERE clause to evaluate your query.
Refer to Appendix C for more detailed information about links and the LINK
OPTIONAL statement.

How ENFORM Handles "Non-Contributing" Record Descriptions

When your query specifications include LINK OPTIONAL statements, ENFORM
produces target records from the logical records built for the link in a normal manner
with certain exceptions. These exceptions involve "non-contributing" record
descriptions. For a given logical record, a record description is "non-contributing" if
the logical record does not contain any data values from the data file associated with
the record description. For example, consider the following query specifications:
OPEN employee, branch;
LINK employee TO OPTIONAL branch VIA branchnum;
LIST empname, branchname;
Each logical record built for the preceding query will contain data values from the
employee records; therefore, the employee record description is said to "contribute" to
each logical record. However, some of the logical records might not contain data
values from the branch records. For these logical records, the branch record description
is said to be "non-contributing."
058057 Tandem Computers Incorporated

Hide quick links:

Advertisement

Table of Contents
loading

This manual is also suitable for:

Enform

Table of Contents