Creating a status program

Once RTA determines (by issuing an EXEC CICS® INQ) that your program is available, RTA issues a status call (which uses the CICS/ESA format of DFHCOMMAREA) to the program. When RTA invokes your program, the DFHEICAP field of the DFHEISTG DSECT contains the address of the COMMAREA. The COMMAREA contains data mapped by the CICSPlex® SM EYURPESC DSECT.

390 Assembler

The EYURPESC DSECT format is as follows:

RTA STATUS CALL DFHCOMMAREA
PESC_HEADER     DS   CL20    EYURPESC block header
PESC_CONTEXT    DS   CL8     CICSplex name
PESC_SCOPE      DS   CL8     CICS system name
PESC_COUNT      DS   F       Number of NAME/STATUS pairs (between
                             1 and 64)
 
PESC_NAME       DS   CL8     Name of status definition (STATDEF)
PESC_STATUS     DS   F       Status token of:
 
PESC-NORMAL     EQU  0000      Normal
PESC_VLS        EQU  0001      Very low severe
PESC_LS         EQU  0002      Low severe
PESC_LW         EQU  0003      Low warning
PESC_HW         EQU  0004      High warning
PESC_HS         EQU  0005      High severe
PESC_VHS        EQU  0006      Very high severe

Start of changeWindows CEnd of change

Start of changeThe EYURPESC format for Windows C is:End of change

typedef struct
{
  char    HEADER[20];    /* EYU block header (fixed length) */
  char    CONTEXT[8];    /* CICSplex name (fixed length) */
  char    SCOPE[8];      /* MAS name (fixed length) */
  int     COUNT;         /* Number of elements; 1-64 (32 bit)   */
  struct
  {
    char  NAME[8];       /* Name of STATDEF (fixed length) */
    int   STATUS;        /* RTA Status token (32 bit) */
  }       ELEMENT[64];
 
} EYURPESC;
 
/* - - Defined values for element STATUS field - - - - - - - - - - - - - - -*/
 
#define EYURPESC_STATUS_NORMAL  0   /* Normal          */
#define EYURPESC_STATUS_VLS     1   /* Very low severe */
#define EYURPESC_STATUS_LS      2   /* Low severe      */
#define EYURPESC_STATUS_LW      3   /* Low warning     */
#define EYURPESC_STATUS_HW      4   /* High warning    */
#define EYURPESC_STATUS_HS      5   /* High severe     */
#define EYURPESC_STATUS_VHS     6   /* Very high severe*/
 

The character arrays within EYURPESC are fixed length strings, filled to the right with spaces. They are not terminated with a null character.

Explanation

For each status definition for which you wish to return status, your program must enter into the appropriate fields of EYURPESC both the NAME and the associated STATUS value. The value provided in the STATUS field indicates that the condition of the application or resource is normal or, if it is abnormal, it indicates the severity of the condition. The number of status definition entries in EYURPESC can be between 1 and 64; the number must be specified in the COUNT field as a fullword binary integer value.

The name of the status definition which caused the status call is supplied by RTA in the NAME field of the first entry to be returned. Therefore, NAME need not be supplied for the first entry in the table. The associated STAT US must be provided by your program. All subsequent status definition NAMEs (and the STATUS for each) must also be specified by your program.

Note:
Start of change
The CICSPlex SM API cannot be used from within a program that is invoked through the Status definition or STATDEF view. Where access to the API is required, you must start another task and invoke the API from the new task.
End of change
[[ Contents Previous Page | Next Page Index ]]