There is no list or execute form of the macro.
Requirements for the caller are:
Environmental factor | Requirement |
---|---|
Minimum authorization: | Problem state, and any PSW key. |
Dispatchable unit mode: | Task or SRB |
Cross memory mode: | Any PASN, any HASN, any SASN |
AMODE: | 24- or 31-bit |
ASC mode: | Primary, secondary, or access register (AR) |
Interrupt status: | Enabled or disabled for I/O and external interrupts |
Locks: | No locks held. |
Control parameters: | Must be in the primary address space or be in an address/data space that is addressable through a public entry on the caller's dispatchable unit access list (DU-AL). |
The maximum size of the symptom record is 1900 bytes. In addition to providing storage for the symptom record, 100 bytes must be provided for a work area; therefore, the maximum amount of storage needed is 2000 bytes.
The symptom record storage must reside in the primary address space.
None.
When specifying SYMRBLD COMPLETE with INVOKE=YES (the default) the caller must ensure that register 13 points to a standard 72-byte save area.
Once you specify SR on SYMRBLD INITIAL and you plan to specify either SYMRBLD PRIMARY, SYMRBLD SECONDARY, SYMRBLD VARIABLE, or SYMRBLD COMPLETE without respecifying the SR parameter, you must put the address of the storage area into register 1.
Some callers depend on register contents remaining the same before and after issuing a service. If the system changes the contents of registers on which the caller depends, the caller must save them before issuing the service, and restore them after the system returns control.
None.
The standard form of the SYMRBLD macro with the INITIAL option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
INITIAL | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,PRIMLEN=primary length | primary length: Decimal digit, RX-type address, or address in register (2)-(12). |
,SECLEN=secondary length | secondary length: Decimal digit, RX-type address, or address in register (2)-(12). |
Default: 0 | |
,VARLEN=variable length | variable length: Decimal digit, RX-type address, or address in register (2)-(12). |
Default: 0 | |
,ARCHLEV=10 | This is the architecture level of the symptom record. |
,COMPDSC=comp desc | comp desc: RX-type address or address in register (2)-(12). |
,PROBLEM=problem id | problem id: RX-type address or address in register (2)-(12). |
,SERVLEV=service level | service level: RX-type address or address in register (2)-(12). |
,NOCONVERTS | |
,PROGRAM=progname | progname: RX-type address or address in register (2)-(12). |
,PROGLEV=proglevel | proglevel: RX-type address or address in register (2)-(12). |
The parameters for SYMRBLD INITIAL are explained as follows:
The maximum size of the symptom record is 1900 bytes. Sections 1, 2, and 2.1 use 212 bytes of the total 1900 bytes. Sections 3, 4, and 5 use the remaining 1688 bytes. In addition to providing storage for the symptom record, 100 bytes must be provided for a work area, therefore, the maximum amount of storage needed is 2000 bytes.
Use the PRIMLEN, SECLEN, and VARLEN parameters to specify the length of sections 3, 4, and 5, respectively.
Lengths of all SDBKEYs + length of all data provided with
the DATA keyword + the number of times SDBKEY is specified
+ the length of all data specified with the SDBSTRING keyword
+ the number of times the SDBSTRING keyword is provided.
Note that this field cannot be zero and the maximum size of the entire symptom record is 1900 bytes.
Lengths of all SDBKEYs + length of all data provided with
the DATA keyword + the number of times SDBKEY is specified
+ the length of all data specified with the SDBSTRING keyword
+ the number of times the SDBSTRING keyword is provided.
Note that the maximum size of the entire symptom record is 1900 bytes.
If a length of zero is specified, the secondary symptom string is ignored. If SECLEN is not specified, the default is zero.
The length provided must be the total length of the variable data items
+ the number of items (x) 4.
(The 4 is for the 2 byte key + 2 bytes for the length.) Note that the maximum size of the entire symptom record is 1900 bytes.
If a length of zero is specified, section 5 is ignored. If VARLEN is not specified, the default is zero.
The standard form of the SYMRBLD macro with the PRIMARY option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
PRIMARY | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,SDBSTRING=SDB string | SDB string: RX-type address or address in register (2)-(12). |
,SDBKEY=SDB key | SDB key: SDB key name, or SDB
key literal in single quotation marks. See the parameter description
for a list of valid SDB key names and literals. Note: You must code
either SDBSTRING or SDBKEY or both.
|
,SDBLEN=SDB length | SDB length: Decimal digit 1-256, or register (2)-(12). |
,SDBLENVAR=SDB variable | SDB variable: RX-type address
or address in register (2)-(12). Note:
|
,DATA=data | data: RX-type address or address
in register (2)-(12). Note: DATA is required with SDBKEY only.
|
,LEN=data length | data length: Decimal digit 1-13, or register (2)-(12). |
,LENVAR=data variable | data variable: RX-type address
or address in register (2)-(12). Note:
|
,CONVERT=YES | Default: CONVERT=NO |
,CONVERT=NO | Note: CONVERT is valid with DATA only. |
,TYPE=TEST |
Default: TYPE=TEST |
The parameters for SYMRBLD PRIMARY are explained as follows:
You would use the primary symptom string because, in most cases, the PIDS/aaaaaaaa symptom is in section 3 of the symptom record. When the symptom record is initialized by invoking SYMRBLD INITIAL, the symptom is created from the data supplied with the PROGRAM parameter and is placed as the first symptom in section 3.
You must code either SDBSTRING or SDBKEY or both. When you code both on the same macro, the data provided with the SDBSTRING parameter is put into the symptom string first.
You must code either SDBSTRING or SDBKEY or both. When you code both on the same macro, the data provided with the SDBSTRING parameter is put into the symptom string first.
The following table contains the valid SDB key names and literals:
SDB Key Name | SDB Key Literal | Description |
---|---|---|
SDBAB_S | AB/S | System abend or program check. |
SDBAB_U | AB/U | User abend code. |
SDBADRS | ADRS/ | Any software routine, CSECT, or program address; displacement within a routine; or offset within a field or data area. |
SDBDEVS | DEVS/ | IBM® device types. |
SDBFLDS | FLDS/ | A field, data area, or label involved with the problem. If a field name is longer than 10 characters, use two keys and split the name of the field. |
SDBLVLS | LVLS/ | The system release or program product/component level where the problem occurs. |
SDBMS | MS/ | Program- or device-issued message. If there is no identifier, enter the message as it appears and MS/NOID to denote this. |
SDBOPCS | OPCS/ | Software program operation code, I/O read/write command codes, teleprocessing operation codes and request codes. |
SDBOVS | OVS/ | Overlaid storage. |
SDBPCSS | PCSS/ | Any software statement, JCL, operator or user commands, parameters, program language statements, data set names, library names, teleprocessing logical and physical unit names, program function keys or other operator keys, environments, process names, procedures or other symptoms which do not fit other key descriptions in this table. |
SDBPIDS | PIDS/ | Product identifier. |
SDBPRCS | PRCS/ | Any program-generated return, reason, step, condition, or device status code. |
SDBPTFS | PTFS/ | Program temporary fix (PTF) or Authorized Program Analysis Report (APAR) associated with the problem. |
SDBPUBS | PUBS/ | Publication identifier. |
SDBREGS | REGS/ | A register number associated with the problem, followed by the offset from the PSW. |
SDBREGS_CR | REGS/CR | A control register associated with the problem. This symptom is followed with a symptom containing the value in the register. |
SDBREGS_FP | REGS/FP | A floating point register associated with the problem. This symptom is followed with a symptom containing the value in the register. |
SDBREGS_GR | REGS/GR | A general purpose register associated with the problem. This symptom is followed with a symptom containing the value in the register. |
SDBREGS_AR | REGS/AR | An access register associated with the problem. This symptom is followed with a symptom containing the value in the register. |
SDBRIDS | RIDS/ | Module CSECT name. |
SDBRIDSL | RIDS/ | Load module name. |
SDBRIDSR | RIDS/ | Recovery routine CSECT name. |
SDBSIG | SIG/ | System- or device-issued operator warning signal. |
SDBVALU | VALU/ | Contents of a register. This SDB keyword must be preceded with one of the following: REGS/CRhh, REGS/FPhh, or REGS/GRhh. |
SDBVALU_B | VALU/B | Binary value of a field in error. This SDB key must be preceded by the name of the field. The most appropriate SDB key is FLDS/. |
SDBVALU_C | VALU/C | Character value of a field in error. This SDB key must be preceded by the name of the field. The most appropriate SDB key is FLDS/. |
SDBVALU_H | VALU/H | Hexadecimal value of a field in error. This SDB key must be preceded by the name of the field. The most appropriate SDB key is FLDS/. |
SDBWS_D | WS/D | System- or device-issued disabled WAIT code. |
SDBWS_E | WS/E | System- or device-issued enabled WAIT code. |
If CONVERT is specified with the user abend code SDB key, SDBAB_U, the binary data is converted to decimal EBCDIC.
The default is CONVERT=NO. CONVERT is valid with DATA only.
The default is TYPE=TEST.
The standard form of the SYMRBLD macro with the SECONDARY option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
SECONDARY | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,SDBSTRING=SDB string | SDB string: RX-type address or address in register (2)-(12). |
,SDBKEY=SDB key | SDB key: SDB key name, or SDB key literal in single quotation marks. See the parameter description for a list of valid SDB key names and literals. |
Note: You must code either SDBSTRING or SDBKEY or both. | |
,SDBLEN=SDB length | SDB length: Decimal digit 1-256, or register (2)-(12). |
,SDBLENVAR=SDB variable | SDB variable: RX-type address
or address in register (2)-(12). Note:
|
,DATA=data | data: RX-type address or address in register (2)-(12). |
,LEN=data length | data length: Decimal digit 1-13, or register (2)-(12). |
,LENVAR=data variable | data variable: RX-type address
or address in register (2)-(12). Note:
|
,CONVERT=YES | Default: CONVERT=NO |
,CONVERT=NO | Note: CONVERT is valid with DATA only. |
,TYPE=TEST |
Default: TYPE=TEST |
The parameters for SYMRBLD SECONDARY are explained as follows:
Binary and hex data can be provided with the VALU/B and VALU/H keys.
You must code either SDBSTRING or SDBKEY or both. When you code both on the same macro, the data provided with the SDBSTRING parameter is put into the symptom string first.
You must code either SDBSTRING or SDBKEY or both. When you code both on the same macro, the data provided with the SDBSTRING parameter is put into the symptom string first.
If CONVERT is specified with the user abend code SDB key, SDBAB_U, the binary data is converted to decimal EBCDIC.
The default is CONVERT=NO. CONVERT is valid with DATA only.
The default is TYPE=TEST.
The standard form of the SYMRBLD macro with the VARIABLE option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
VARIABLE | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,S5KEY=5key | 5key: Section 5 key name, or section 5 key literal in single quotation marks. See the parameter description for valid section 5 key names and literals. |
,DATA=data | data: RX-type address or address in register (2)-(12). |
,LEN=data length | data length: Decimal digit 1-256, or register (2)-(12). |
,LENVAR=data variable | data variable: RX-type address
or address in register (2)-(12). Note: If you use register notation
for data length, the register contains the length
itself rather than the address of the length.
|
,TYPE=NOTEST | Default: TYPE=TEST |
,TYPE=TEST | |
The parameters for SYMRBLD VARIABLE are explained as follows:
The VARIABLE parameter must be specified once for each symptom provided in key/length/data format.
The following table contains the two valid section 5 key names and literals:
Section 5 Key Name | Section 5 Key Literal | Description |
---|---|---|
S5EBCDIC | F000 | EBCDIC printable data. |
S5HEX | FF00 | Hexadecimal data. |
The default is TYPE=TEST.
The standard form of the SYMRBLD macro with the COMPLETE option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
COMPLETE | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,INVOKE=YES | Default: INVOKE=YES |
,INVOKE=NO | |
,RETCODE=return code | return code: RX-type address
or address in register (2)-(12). Note: RETCODE is valid with INVOKE=YES
only.
|
,RSNCODE=reason code | reason code: RX-type address
or address in register (2)-(12). Note: RSNCODE is valid with INVOKE=YES
only.
|
The parameters for SYMRBLD COMPLETE are explained as follows:
SYMRBLD COMPLETE is required before the symptom record can be successfully written to the logrec data set.
The default is INVOKE=YES.
None.
The SYMRBLD macro itself does not generate any return codes. However, if you specify INVOKE=YES on SYMRBLD COMPLETE (or take the default), you can receive return codes and reason codes from the SYMREC macro. The return code from SYMREC is in GPR 15 (and return code if you coded RETCODE); the reason code from SYMREC is in GPR 0 (and reason code if you coded RSNCODE). See Return and reason codes for a list of return codes from the SYMREC macro.
The standard form of the SYMRBLD macro with the RESET option is written as follows:
Syntax | Description |
---|---|
name | name: Symbol. Begin name in column 1. |
␢ | One or more blanks must precede SYMRBLD. |
SYMRBLD | |
␢ | One or more blanks must follow SYMRBLD. |
RESET | |
,SR=storage addr | storage addr: RX-type address or address in register (2)-(12). |
,PRIMLEN=primary length | primary length: Decimal digit, RX-type address, or address in register (2)-(12). |
,SECLEN=secondary length | secondary length: Decimal digit, RX-type address, or address in register (2)-(12). |
,VARLEN=variable length | variable length: Decimal digit, RX-type address, or address in register (2)-(12). |
The parameters for SYMRBLD RESET are explained as follows:
The maximum size of the symptom record is 1900 bytes. Sections 1, 2, and 2.1 use 212 bytes of the total 1900 bytes. Sections 3, 4, and 5 use the remaining 1688 bytes. In addition to providing storage for the symptom record, 100 bytes must be provided for a work area; therefore, the maximum amount of storage needed is 2000 bytes.
Use the PRIMLEN, SECLEN, and VARLEN parameters to specify the length of sections 3, 4, and 5 respectively.
Lengths of all SDBKEYs + length of all data provided with
the DATA keyword + the number of times SDBKEY is specified
+ the length of all data specified with the SDBSTRING keyword
+ the number of times the SDBSTRING keyword is provided.
Note that this field cannot be zero and the maximum size of the entire symptom record is 1900 bytes.
If you do not specify PRIMLEN, the length of the primary symptom string will not change from the length you specified on SYMRBLD INITIAL, or on a previous SYMRBLD RESET.
Lengths of all SDBKEYs + length of all data provided with
the DATA keyword + the number of times SDBKEY is specified
+ the length of all data specified with the SDBSTRING keyword
+ the number of times the SDBSTRING keyword is provided.
Note that the maximum size of the entire symptom record is 1900 bytes.
If you do not specify SECLEN, the length of the secondary symptom string will not change from the length you specified on SYMRBLD INITIAL, or on a previous SYMRBLD RESET.
The length provided must be the total length of the variable data items
+ the number of items (x) 4.
(The 4 is for the 2 byte key + 2 bytes for the length.) Note that the maximum size of the entire symptom record is 1900 bytes.
If you do not specify VARLEN, the length of the variable data section will not change from the length you specified on SYMRBLD INITIAL, or on a previous SYMRBLD RESET.
SYMRBLD INITIAL,SR=SREC,
PRIMLEN=100,SECLEN=50,VARLEN=50,
ARCHLEV=10,COMPDSC=MYCOMP,
PROGRAM=PROGNAME,PROGLEV=REL6,
PROBLEM=MYPROB,
SERVLEV=MYSERV
SYMRBLD PRIMARY,SDBSTRING=S1_DATA
SYMRBLD SECONDARY,SDBSTRING=S2_DATA,SDBKEY=SDBVALU_H,
DATA=COUNTER,CONVERT=YES
SYMRBLD VARIABLE,S5KEY=S5HEX,DATA=MYVARDAT
SYMRBLD COMPLETE,INVOKE=YES
SREC DS CL600
MYCOMP DC CL13'COMPONENT XXX'
MYPROB DC CL14'DATABASE ERROR'
MYSERV DC CL9'VERSION 1'
PROGNAME DC CL8'ABE5698J'
REL6 DC CL3'REL6'
S1_DATA DC CL43'PRCS/00028878 RIDS/ABE5698J RIDS/ABD5698J#L'
S2_DATA DC CL22'LVLS/C20 FLDS/COUNTER'
MYVARDAT DC XL2'01E4'
COUNTER DC X'FFFFFFFF'