C eval pdr(x) = %addr(qpdspgm)
C eval x = x + 1
Cᑍ
Cᑍ Record the failing source statement number
Cᑍ
C eval qpdk7 = 2
C eval qpdkl = %SIZE(rc)
C eval qpddl = %SIZE(src_line)
C eval qpddt = 'C'
C eval qpdk8 = %ADDR(rc)
C eval qpdd = %ADDR(src_line)
Cᑍ
Cᑍ and record the key:
Cᑍ
C eval pdr(x) = %addr(qpds)
C eval x = x + 1
Cᑍ
Cᑍ Record the status code as data
Cᑍ
C eval qpdk11 = 31
C eval qpddl = %SIZE(status)
C eval qpddi = 1
C eval qpdd = %ADDR(status)
Cᑍ
Cᑍ and record the key:
Cᑍ
C eval pdr(x) = %addr(qpds)
C eval x = x + 1
Cᑍ
Cᑍ For illustration purposes, dump the program object
Cᑍ
C eval qpdk12 = 32
C eval qpdobjn = pgm_name
C eval qpdobjlib = lib_name
C eval qpdobjt = 'ᑍPGM'
Cᑍ
Cᑍ and record the key:
Cᑍ
C eval pdr(x) = %addr(qpdnsot)
C eval x = x + 1
Cᑍ
Cᑍ Call the Report Software Error API
Cᑍ
C callb qpdrse
C parm pdr
C parm x
C parm qusec
Cᑍ
Cᑍ If an error on the API call, then indicate a terminal error
Cᑍ
C qusbavl ifgt
C 'Terminal err'dsply
C end
C else
Cᑍ
Cᑍ If error within ᑍPSSR, then indicate ᑍPSSR error
Cᑍ
C 'ᑍPSSR error' dsply
B-128 System API Programming V4R1