Standard Data Element Definition Statements

Five of the generation definition statements define data elements within a file. These statements are grouped in clusters, according to function. The statement types are TYPE, ALIAS, NAME, EXP, and DEPEND.
micsrm140
Five of the generation definition statements define data elements within a file. These statements are grouped in clusters, according to function. The statement types are TYPE, ALIAS, NAME, EXP, and DEPEND.
The TYPE statement defines summarization characteristics for one or more data elements. A minimum of one TYPE statement per file must be defined, with no maximum number of TYPE statements per file.
The following statements apply to the definition of an individual data element:
ALIAS Statement
(Optional) An ALIAS statement defines a data element name, other than the real name of the data element, under which MICF looks for documentation. For example, data elements TSOSDST1 through TSOSDST8 is documented on the
MICS Data Dictionary
by the member named TSOSDSTX. An ALIAS statement applies only to the data element defined by the NAME statement following the ALIAS statement.
NAME (essential) or NAMX (non-essential) Statement
This statement gives the characteristics of the data element itself. Included on this statement are the short name and title of the data element, the optional group to which the data element belongs (if any), and the timespans of the file on which the data element is kept or is part of the file key structure.
EXP Statement 
This statement is used for data elements whose summarization TYPE is C, for computed. The EXP statements following each NAME or NAMX statement for C-type data elements contain SAS code that calculates the value of the data element.
DEPEND statement
(Optional) This statement relates the data element that is defined by the previous NAME or NAMX statement to one or more other data elements on the same file. Each DEPEND statement might list one or more data element names, and one or more DEPEND statements might be used for any data element.
Note:
 DEPEND statements CANNOT refer to elements on other files.
For example, the average response time for CICS transactions is CSYAVTTM. Having CSYAVTTM on the file in any timespan that does not contain the data elements necessary to calculate CSYAVTTM is not appropriate. These data elements are the total number of transactions CSYTRANS and the total response time CSYTRSTM.
The grouping and order of the statements are important because of the hierarchical nature of MCG statements. This diagram illustrates the order of statements:
+------------------------- FILE ... | +------------------- TYPE .... | | +- ALIAS ... | | | NAME ... | | Data element group -+ EXP 01 ... | | | EXP 02 ... | type | | EXP nn ... | group -+ +- DEPEND ... | | file | | Data element group -+- NAME ... group + | +- EXP 01 ... | | | | +- NAME ... | | Data element group -+ EXP 01 ... | +-------------------- +- DEPEND ... | | | more | type | groups - ... | V

Type Statement (TYPE)

This statement defines the type, length, and SAS format attributes for data elements.
Statement Format
 
This keyword is coded with the KEYWORD starting in column 1, free-form, and continuing through column 72. Continuation is not supported. The following illustration describes the format and coding rules for the TYPE Statement.
TYPE tt lll.l ffffff lll.l fffffff lll.l fffffff | | | | | | | | | | | | | +---YMF - SAS | | | | | | FORMAT for | | | | | | YEARS and | | | | | | MONTHS | | | | | | | | | | | +---YML - SAS LENGTH | | | | | for YEARS and | | | | | MONTHS | | | | | | | | | +---DWF - SAS FORMAT for | | | | WEEKS and DAYS | | | | | | | +---DWL - SAS LENGTH for WEEKS and | | | DAYS | | | | | +---DTF - SAS FORMAT for DETAIL | | | +---DTL - SAS LENGTH for DETAIL | +---DATATYPE - Type of data element that is defined as described here.
Statement Option Definitions
 
TYPE
Defines data elements' type, length, and SAS format attributes. The definitions that are provided in a TYPE statement are used for all data elements following the statement (NAME/NAMX statements) until a new TYPE statement is encountered.
Note:
 If the MONEY format is used on the TYPE statement, the length for any data element is forced to 8.
DATATYPE
Defines the type of data element and the manner in which this element is operated on by the
MICS
summarization process. The valid codes include:
R
Retained data element
A
Accumulated data element
M
Maximum data element
N
Minimum data element
C
Derived data element with expressions
CN
Derived data element with no expressions
X
Common data element
XR
Common Retained data element
XA
Common Accumulated data element
XM
Common Maximum data element
XN
Common Minimum data element
XC
Common Derived data element
XCN
Common Derived data element with no expressions
DTL
Defines the number of bytes that is to be used for the data element's LENGTH when used in the DETAIL timespan. The LENGTH is required. Any valid SAS numeric or character LENGTH might be used. The maximum length of this value is 5 characters. Reference the recommendations on LENGTH definition that is provided here.
DTF
Defines the display mask that is to be used as the data element's FORMAT and INFORMAT when used in the DETAIL timespan. The format is not required and is coded as a (.) to specify no format. Any valid SAS FORMAT might be used. The maximum length of this value is 12 characters. Reference the recommendations on FORMAT definition that is provided here.
DWL
Defines the number of bytes that is to be used for the data element's LENGTH when used in the WEEKS or DAYS timespans. The LENGTH is required. Any valid SAS numeric or character LENGTH might be used. The maximum length of this value is 5 characters. Reference the recommendations on LENGTH definition that is provided here.
DWF
Defines the display mask that is to be used as the data element's FORMAT and INFORMAT when used in the WEEKS or DAYS timespans. The format is not required and is coded as a (.) to specify no format. If no format has been specified but a FORMAT was defined for the DETAIL timespan (DTF), then that FORMAT is used in place of the "no format" specification. Any valid SAS FORMAT might be used. The maximum length of this value is 12 characters. Reference the recommendations on FORMAT definition that is provided here.
YML
Defines the number of bytes that is to be used for the data element's LENGTH when used in the YEARS or MONTHS timespans. The LENGTH is required. Any valid SAS numeric or character LENGTH might be used. The maximum length of this value is 5 characters. Reference the recommendations on LENGTH definition that is provided here.
YMF
Defines the display mask that is to be used as the data element's FORMAT and INFORMAT when used in the YEARS or MONTHS timespans. The format is not required and is coded as a (.) to specify no format. If no format has been specified but a FORMAT was defined for the lower timespans (WDF or DTF), then that FORMAT is used in place of the "no format" specification. Any valid SAS FORMAT might be used. The maximum length of this value is 12 characters. Reference the recommendations on FORMAT definition that is provided here.
LENGTH definition recommendations
 
Integer values: Maximum Value SAS LENGTH 255 2 65,535 3 16,777,215 4 4,294,967,295 5 1,099,511,627,775 6 281,474,946,710,655 7 720,557,594,037,928,000 8 Fractions to 0.1 Maximum Value SAS LENGTH 255.9 3 65,535.9 4 16,777,215.9 5 4,294,967,295.9 6 1,099,511,627,775.9 7 281,474,976,710,656.9 8 Fractions to 0.01 Maximum Value SAS LENGTH 255.99 3 65,535.99 4 16,777,215.99 5 4,294,967,295.99 6 1,099,511,627,775.99 7 281,474,976,710,656.99 8 Times in 0.01-Seconds Maximum Value SAS LENGTH HH:MM:SS.HS 18:12:15.99 4 4,660:20:15.99 5 ?????????????????? 6
FORMAT definition recommendations
 
  • Integer, fraction, and character data elements should not have FORMATs defined. Instead, enter a period (missing value) in the format field.
  • Percentage data elements should have a LENGTH of 3 and a FORMAT of MAPCT, which displays the percentage as 999.99 percent.
    Times in 0.01-Seconds FORMAT SAS LENGTH TIME11.2 5 TIME15.2 6 TIME18.2 7 TIME18.2 8
Timestamp data elements should have a LENGTH of 7 and a FORMAT of DATETIME19.2 (DDMMMYY:HH:MM:SS.HS) or DATETIME21.2 (DDMMMYYYY:HH:MM:SS.HS).
Statement Definition Example
 
TYPE XM 7 DATETIME19.2 7 DATETIME19.2 7 DATETIME19.2
The data elements that are defined by the NAME statements to follow are common data elements that operate on as maximum values (XM). The value is a timestamp having a length of 7 bytes and a format of DATETIME19.2 (for example, 09APR00:11:17:23.22 for April 9, 2000) for the DETAIL, DAYS/WEEKS, and MONTHS/YEARS definitions.

Alias Statement (ALIAS)

This statement defines the name by which this data element's associated data dictionary description is stored. Most data elements have their data dictionary elements that are stored as members with names that are the same as that of the element. There are cases where several different data elements have a common definition. In these cases, this definition need only be stored one time and an alias that is assigned to each of the applicable elements.
Statement Format
 
This keyword is coded with the KEYWORD starting in column 1, free-form, and continuing through column 72. Continuation is not supported. The following illustration describes the format and coding rules for the ALIAS statement.
ALIAS xxxxxxxx | +---ALIASNAM
Data element name alias that is used to name this element's data
Statement Option Definitions
 
ALIAS
Defines the name by which this data element's associated data dictionary description is stored.
ALIASNAM
Assigns a data dictionary alias for the data element name instead of using the standard data element name in the data dictionary.
Statement Definition Example
 
ALIAS TSMDIST
This statement assigns an alias data dictionary name "TSMDIST" to the data element defined in the NAME statement immediately following this ALIAS statement.

Name Statement (NAME or NAMX)

This statement identifies a data element and defines its program tag, 40-character label, group cluster code (which is discussed with the OPTION statement), and the status of the data element in each of the database's timespans. Special name definitions are used by the generator to indicate different generation facilities. These are explained under the description for TAG.
Statement Format
 
This keyword is coded with the KEYWORD starting in column 1, free-form, and continuing through column 72. Continuation is not supported. The following illustration describes the format and coding rules for the statement.
name nnnnnnnn c x d w m y xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | | | | | | | | | | | | | | | | +---LABEL - element description | | | | | | | | | | | | | | | +---YEARS - Timespan data element | | | | | | | active status | | | | | | | | | | | | | +---MONTHS - Timespan data element | | | | | | active status | | | | | | | | | | | +---WEEKS - Timespan data element | | | | | active status | | | | | | | | | +---DAYS - Timespan data element | | | | active status | | | | | | | +---DETAIL - Timespan data element | | | active status | | | | | +---CLUSTER - Data element cluster | | definition | | | +---TAG - Data element name (4-8 characters). If | the data element is not a Common data element | (X or Xx), then positions 1-3 must contain the | file ID defined in the FILE statement. | +-----Statement identifier - NAME for essential data elements, or NAMX for non-essential data elements.
Statement Options Definition
 
NAME
Defines an essential data element.
Or
NAMX
Defines a non-essential data element. Typical user component definitions do not use the NAMX statement because non-essential data elements would not be defined.
TAG
Data element name (4-8 characters). If the data element is not a Common data element, then positions 1-3 must contain the file ID defined in the FILE statement.
There are several names that have special functions:
@@ACCT
Specifies that the generated account codes are to be inserted in place of this action name. For example, if the Batch and Operations Analyzer was being generated and the user defined two account codes, then two fields (ACCTNO1 and ACCTNO2) would be substituted for the @@ACCT field.
@@FIRST
Specifies that computation expressions (EXP) immediately following this statement are not to be associated with a field, but are to be the first computations that are made on this file's content, before calculating the standard computed elements. A TYPE statement for computed (C) elements must precede this statement.
@@LAST
Specifies that computation expressions (EXP) immediately following this statement are not to be associated with a field, but are to be the last computations that are made on the contents of this file after calculating the standard computed elements. A TYPE statement for computed (C) elements must precede this statement.
CLUSTER
Data element cluster definition. Normally set to 00, unless one of the following common codes are used:
Product Guides for information about cluster codes that are used in each data integration product, see the individual Product Analyzers.
Common Definition Cluster Codes
 
Code
 
Keyword
 
Description
 
99
None
Common definition data element
99xx
None
Common definition data element that is also a CLUSTER of one of the previous clusters
For example, if the CLUSTER is defined as 01, then the element is included if RACF is defined in the OPTION statement for the Batch and Operations Analyzer (SMFGENIN). It is excluded if NORACF is defined.
Code 99 is used to point the MCG logic to a common definition of this data element, which is located in either cccGENIN or $DEGENIN. If 99 is coded in CLUSTER, the LABEL field on the NAME statement and all description from the preceding TYPE statement is ignored. That information is taken from the description of the data element with the same TAG in member cccGENIN or $DEGENIN.
Code 9901 would define a common data element (99) that is controlled by the RACF (01) option.
DETAIL
Timespan data element active status.
DAYS
Timespan data element active status.
WEEKS
Timespan data element active status.
MONTHS
Timespan data element active status.
YEARS
Timespan data element active status.
LABEL
A 40-character element description (Reference CLUSTER 99).
Recommendation on timespan status definition
This definition determines an element's active and sequence/summary status according to the following guidelines:
N
Inactive; the data element is not to be kept in the file for the designated timespan.
0 (zero)
Active; the data element is to be kept in the file for the designated timespan.
n
Active sequence/summary element; the data element is to be kept in the file for the designated timespan.
"n" defines the order in which the data element is used to sequence or summarize the file (n=1 is the major sequence, n=2 the second most major sequence, and so forth). Up to 20 sequence/summarization elements are allowed within a file's timespan definition.
The @@FIRST and @@LAST elements might not be defined as sequence/summary fields.
@@ACCT elements are generally defined as sequence/summary fields, but you do not need to consider the number of account codes that replace this special name because the generator inserts them and increments the sequence numbers for you.
For example, if the sequence of a file is SYSID, account codes, and ENDTS, then SYSID would be defined as the most major field (n=1), @@ACCT the second most major field (n=2), and ENDTS the last field (n=3). If there is more than one account code, say ACCTNO1 and ACCTNO2, the generator inserts them correctly and increments the sequence definitions of those following to reflect the number of account numbers that were inserted. In this example, the sequences after generation are SYSID (first), ACCTNO1 (second), ACCTNO2 (third), and ENDTS (fourth).
Dn
Active sequence/summary element; the data element is to be kept in the file for the designated timespan. The sequence pattern of this data element is descending.

Computation Statement (EXP)

This statement defines SAS statements necessary to calculate the value of a derived data element. The expression statement must follow the NAME statement (normal, @@FIRST, @@LAST) to which it applies and must have a TYPE statement that is defined as compute (C).
Note:
 An expression statement is not to be provided if the TYPE statement is defined as compute with no expression (CN). An expression statement is not to be provided if the TYPE statement is defined as compute with no expression (CN).
This statement is used to define the computation of averages, percentages, and special computations (for example, avg working set size).
A DEPEND statement must be coded after the EXP statements containing the data elements used as input to the equations.
This ensures that the data elements are available when the expression statements are executed. The DEPEND statement is described in the next section.
Note:
 The validity of the SAS statements is not checked during component generation. Errors in the expression are not realized until derived elements are computed during the daily update or reporting.
Statement Format
 
EXP nn xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx | | | +---EXPSTAT - SAS statements. | +--- EXPNO - Expression sequence number.
Statement Option Definitions
 
EXP
Defines the computation expression.
EXPNO
Expression sequence number. If there is only one statement to the expression this value is 01. If multiple statements are required, then this sequence number defines the order that the statements appear and is incremented by one.
EXPSTAT
SAS statements defining derivation formulas (columns 8-69). Multiple statements are concatenated as a single expression. The expression in a single statement is a maximum of 61 characters in length.
Statement Example
 
The following examples illustrate the recommended way to compute an average, percentage, and special value.
Average Concurrent TSO Users
 
EXP 01 IF INTERVLS > 0 THEN TSOAVUSR=TSONOUSR / INTERVLS; or EXP 01 %AVERAGE(TSOAVUSR,TSONOUSR,INTERVLS); (var) (num) (denom)
Percent of Batch Jobs Meeting Target
 
EXP 01 IF JOBCOUNT > 0 THEN JOBPCMET=(JOBSRVMT*100)/JOBCOUNT; or EXP 01 %PERCENT(JOBPCMET,JOBSRVMT,JOBCOUNT); (var) (num) (denom)
Control Performance Group Average Working Set Size
 
EXP 01 IF PGAMSD*PGACTS > 0 THEN EXP 02 PGAAVRSF=(PGAMTS*PGACSD*50)/(PGAMSD*PGACTS); EXP 03 ELSE PGAAVRSF=0;
Note:
 The %AVERAGE and %PERCENT macros provide a standardized computation of average and percentage for use in computed data elements. In active use, these can reduce syntactical and computational errors of computing data elements.

Data Dependency Statement (DEPEND)

This statement defines the data elements that are required to compute the data element that is defined by the previous NAME or NAMX statement or by the general computed definitions of @@FIRST and @@LAST. The DEPEND statement causes an additional edit to be performed to ensure that an element required in a computation is not inadvertently marked inactive.
Statement Format
 
DEPEND XXXXXX XXXXXX XXXXXX XXXXXX XXXXXX XXXXXX XXXXXX | +---ELEMENTS - One to seven elements which are required to compute the elements in NAME, @@FIRST, or @@LAST.
Statement Option Definitions
 
DEPEND
Defines the data elements in this file on which the computation of the elements in NAME, @@FIRST, or @@LAST depends.
ELEMENTS
The 4-8 character field tags of the fields required. If an element is defined on a DEPEND statement and has been deleted from the file or marked inactive (N) an error message is generated and the run aborted.
Statement Example
 
The following examples illustrate the use of the DEPEND statement with a computed expression.
NAME PGAAVRSF 00 0 0 0 0 0 Average Working Set Size EXP 01 IF PGAMSD*PGACTS > 0 THEN EXP 02 PGAAVRSF=(PGAMTS*PGACSD*50)/(PGAMSD*PGACTS); EXP 03 ELSE PGAAVRSF=0; DEPEND PGAMSD PGACTS PGAMTS PGACSD