Use the PARTIAL command to specify when to print information that does not meet all of the extraction criteria.
For a record to be included in the report, it must satisfy all WHERE criteria that are specified before the PARTIAL command. Selection criteria specified after the PARTIAL command is printed if the conditions are met.
Only one PARTIAL command can be used in each report specification, and the position of the command in the report block affects the report output.
The PARTIAL command enables you to keep the hierarchy of data that has met all of the selection criteria up to a given level of a report, even if it does not meet additional selection criteria that is specified.
It is not necessary to specify selection criteria at every level of the report.
Examples
Example 1: PARTIAL command
The following is an example of the PARTIAL command:
REPORT "PARTIAL #1 - Diagrams, Symbols, and Definitions" { TABULAR 1 { SELECT Name, Type WHERE Class = Diagram JOIN WHERE Relation = "contains" JOIN
SELECT Name, Type WHERE Class = Symbol JOIN WHERE Relation = "defined by" JOIN SELECT Name, Type, Description WHERE Description != " " JOIN
PARTIAL WHERE Relation = "uses"
JOIN SELECT Name, Type WHERE Type = "Data Element", "Data Structure" } }
The example above creates a report listing the Name and Type fields of all diagrams, symbols, and definitions, the Description field of the definition, and the name and type of Data Elements and Data Structures, if they exist.
For information to be included in a report, the diagram must contain symbols, the symbols must be defined, and the Description field must not be blank. If all of the selection criteria specified prior to the PARTIAL command is met, data that is in the extraction database is printed. If, however, the Description field of the definition is blank, nothing is printed for that entry, since the WHERE Description != " " statement is before the PARTIAL command.
The additional selection criteria that follow the PARTIAL command, the Name and Type of Data Element or Data Structure, is printed if they exists.
Example 2: PARTIAL command
The following example is another example of the PARTIAL command. The only difference between this report and Example 1 is the position of the PARTIAL command.
REPORT "PARTIAL #2 - Diagrams, Symbols, and Definitions" { TABULAR 1 { SELECT Name, Type WHERE Class = Diagram JOIN WHERE Relation = "contains" JOIN SELECT Name, Type WHERE Class = Symbol JOIN
PARTIAL WHERE Relation = "defined by"
JOIN SELECT Name, Type, Description WHERE Description != " " JOIN WHERE Relation = "uses" JOIN SELECT Name, Type WHERE Type = "Data Element", "Data Structure" } }
In this example, a report is created that includes the Name and Type fields of all diagrams and symbols. The symbol definitions, the Description field of the definition, and the names and types of Data Elements and Data Structures are also printed, if they exist.
The only requirement for the Name and Type of diagram and symbol to be included in the report is that the diagram must contain symbols, since this is the only criteria specified prior to the PARTIAL command.
Additional selection criteria, such as the symbols being defined, the Description field not being blank, and Data Elements or Data Structures being used by the symbol definition, are specified after the PARTIAL command. The PARTIAL command is applied to each WHERE command statement that follows it. Therefore, if a symbol is defined, and a text description is entered in the Description field, the Name, Type and Description is printed, regardless of whether or not it uses data. If Data Elements or Data Structures are used, the Name, and Type are also included in the report.