Previous Topic: Attachment Levels Are Not Hierarchical

Next Topic: Visualizing Extents

Understanding Extents

When using device user source, it is helpful to think of the CA 2E generated source as a collection of independent source text extents rather than as a single source member. When device user source is merged with the CA 2E source, it is merged with an extent, not with the source member as a whole. You select the appropriate extent when you specify the attachment level.

The following points are important to keep in mind regarding extent:

Note: The following examples for DDS are true for SDF as well.

After all device user source is merged, the result is a DDS source file suitable for input to the DDS compiler.

Example:

A typical PMTRCD display file might consist of the following extents, in top-down order:

Extent

Description

Device extent

 

Format extent

(key screen record format)

Entry extent

(key screen 1st field entry)

Entry extent

(key screen 2nd field entry)

Format extent

(detail screen record format)

Entry extent

(detail screen 1st field entry)

Entry extent

(detail screen 2nd field entry)

Entry extent

(detail screen 3rd field entry)

Entry extent

(detail screen 4th field entry)

Entry extent

(detail screen 5th field entry)

Screen extent

(detail screen 5th field entry)

A common error is to attach device user source for a DDS field (entry-level extent) to the DDS record (format-level extent) that contains the selected field. If the device user source contains a FIND merger command to locate the selected field, the field is not found since the scope of a FIND is restricted to the specified extent and the format extent contains only record data definition lines.

By definition, FIND sequentially checks all available lines after the current one and stops at the last one making it the new current line. The search has actually failed, but if SKIP is not used, the following INSERT command places the patch after the current line, for example, at the end of DDS format definition and not in the DDS field definition as intended.