Suboperands for User fields

CICS PA can access user fields in the CMF performance records. The user fields are defined in the CICS® Monitoring Control Table (MCT) as either character type, count type, or clock type. As with CICS-defined clock type fields, user clock type fields have two parts: an elapsed time and a count of the number of times the condition occurred. When specifying user fields to CICS PA, the elapsed time part of clock type fields is called CLOCKTIME, and the count part of clock type fields is called CLOCKCOUNT. Therefore, CICS PA makes it appear as if there are four types of user fields: CHARACTER, COUNT, CLOCKTIME, CLOCKCOUNT.

When specifying user fields in the command stream, certain suboperands must be used to identify the user fields in the CMF performance record. The OWNER suboperand is common to all user fields. Use OWNER to specify the eight-character owner name of the user field.

The owner of the User Field is the entry name assigned to the User Field in the DFHMCT ID= macro specification. If the entry name is not specified in the ID= parameter, CICS assigns a default entry name or owner of 'USER'. CICS PA does not have a default owner name. Even if the owner name is USER, the OWNER suboperand must be specified.

The remaining suboperands are different for CHARACTER type fields versus numeric (COUNT, CLOCKTIME, CLOCKCOUNT)
CHARACTER type
Use the OWNER suboperand when specifying CHARACTER type fields. Only one character user field can be defined for each owner name.
The syntax is:

   CHARACTER(OWNER(owner)[,SUBSTR(offset,length)])

When printing a character user field on the Performance List or Performance Summary report, CICS PA defaults to using the entire length (up to 8 characters for the Performance Summary report) of the character user field.

Use the SUBSTR suboperand to specify that only part of the character user field is to be printed.

The first value (offset) is the position of the first character to be printed (starting at 1), and the second value (length) is how many characters are to be printed. For example, if the character field value is “1234567”, specifying SUBSTR(1,2) results in “12”, and specifying SUBSTR(3,3) results in “345”.

When character user fields are used in a SELECT statement, the SUBSTR operand must be specified.

COUNT, CLOCKTIME, and CLOCKCOUNT types
Use the OWNER and NUMBER operands when specifying user field types COUNT, CLOCKTIME, and CLOCKCOUNT. Up to 256 count type fields and up to 256 lock type fields can be defined for each owner. The OWNER operand specifies the eight-character name of the user field owner. This is the entry name in the DFHMCT ID= macro specification for the user field, or the CICS-assigned default name of 'USER'. NUMBER operand specifies the three-digit number that identifies a specific count or clock type field.
The operand syntax is
   COUNT(OWNER(owner),NUMBER(nnn))
   CLOCKTIME(OWNER(owner),NUMBER(nnn))
   CLOCKCOUNT(OWNER(owner),NUMBER(nnn))

All COUNT, CLOCKTIME, and CLOCKCOUNT type fields can be summarized in the Performance Summary report. Additional operands are then required to define the type of summarization (see SUMMARY - Performance Summary report).

Example:

Consider the DFHMCT User Fields definition below for owner (or group) USEREMP which consists of the following fields:
DFHMCT TYPE=EMP,
       CLASS=PERFORM,
       ID=(USEREMP.1),
       CLOCK=(1,CLOCK1),
       COUNT=(1,COUNT1),
       FIELD=(1,FIELD1),
       PERFORM=(SCLOCK(1),
       ADDCNT(1,1),
       MOVE(1,16))
The command below generates a Performance List report that shows the following user field values:
CICSPA LIST(FIELDS(TRAN,STYPE,USERID,
                   CHARACTER(OWNER(USEREMP),SUBSTR(1,8)),
                   CHARACTER(OWNER(USEREMP),SUBSTR(9,8)),
                   COUNT(OWNER(USEREMP),NUMBER(001)),
                   CLOCKTIME(OWNER(USEREMP),NUMBER(001)),
                   CLOCKCOUNT(OWNER(USEREMP),NUMBER(001))))