IBM AS/400 manual Using an Error Subroutine, blank

Models: AS/400

1 489
Download 489 pages 47.95 Kb
Page 252
Image 252
blank

Table

15.

Operation Codes Allowing Extender 'E' or an Error Indicator in Positions

73-74

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ACQ

(e)

 

ADDDUR (e)

ALLOC

 

(e)

 

CALL

(e)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CALLB(d e)

 

CALLP

(e

1

CHAIN

 

(e

n)

CHECK

(e)

 

 

 

m/r)

 

 

 

CHECKR

(e)

 

CLOSE

(e)

 

COMMIT

(e)

 

DEALLOC(e/n)

 

 

 

 

 

 

 

 

 

 

 

 

 

DELETE

 

(e)

 

DSPLY

(e)

EXFMT

 

(e)

 

EXTRCT

(e)

 

 

 

 

 

 

 

 

 

 

 

 

FEOD

(e)

 

IN

(e)

 

NEXT

(e)

 

OCCUR

(e)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

OPEN

(e)

 

OUT

(e)

 

POST

(e)

 

READ

 

(e

n)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

READC

 

(e)

 

READE

(e

n)

READP

 

(e

n)

READPE

(e

n)

 

 

 

 

 

 

 

 

 

 

 

 

 

REALLOC

(e)

 

REL

(e)

 

RESET

 

(e)

 

ROLBK

(e)

 

 

 

 

 

 

 

 

 

 

 

 

SCAN

(e)

 

SETGT

(e)

 

SETLL

(e)

 

SUBDUR

(e)

 

 

 

 

 

 

 

 

 

 

 

 

SUBST

(e p)

 

TEST

(e

d/t/z)

UNLOCK

(e)

 

UPDATE

(e)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

WRITE

(e)

 

XLATE

(e

p)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Notes:

1.CALLP (e m/r) is an extended Factor-2 operation code and cannot have an e indictator. However, program status and error conditions can be determined ifying the 'e' extender with this operation code.

When

you

specify

an

error

indicator or an

'E'

extender

on

an operatio

can explicitly

call

a

file

error

subroutine

(INFSR)

or

a

program

error

(*PSSR)

with

the

EXSR

 

operation. If

either

INFSR

or

*PSSR

is

explicitly c

the EXSR operation and Factor 2 of the ENDSR operation

is

 

blank

or the

specified

has

a value of blank, control returns to the

next sequential

lowing

the

EXSR

operation.

 

 

 

 

 

 

 

 

 

Using an Error Subroutine

When you write a error subroutine you are doing two things:

1. Enabling the RPG subroutine error handler

The subroutine error handler will handle the exception and pass cont subroutine.

2. Optionally specifying a recovery action.

You can use the error

subroutine to take specific actions based

which

occurred

or

you

can have a generic action (for example, iss

inquiry

message

for

all

errors).

The following considerations apply to error subroutines:

¹You can explicitly call an error subroutine by specifying the name

routine in Factor 2 of the EXSR operation.

¹You can control the point where processing resumes in a main proced specifying a value in Factor 2 of the ENDSR operation of the subro subprocedure, factor 2 of the ENDSR must be blank. Use either a

RETURN

operation prior to the ENDSR operation to prevent the subproce

from

ending abnormally.

¹If an error subroutine is called, the RPG error subroutine handler handled the exception. Thus, the call to the error subroutine refle program processing. If an exception occurs while the subroutine is

228 ILE RPG for AS/400 Programmer's Guide

Page 252
Image 252
IBM AS/400 manual Using an Error Subroutine, blank