× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.

Two copies:

As from Jon Paris:

      * Copy member for all V5R2 program status values

      * RPG program errors (*PROGRAM)
      *  Extracted from Chapter 5 - Program Exception/Errors of the RPG IV 

      * Called program returned with the LR indicator on.
     D ReturnWithLR    C                   00001

      * Conversion resulted in substitution.
     D ConvWithSub     C                   00050

      * Value out of range for string operation
     D StringRangeErr  C                   00100

      * Negative square root
     D NegativeSqRoot  C                   00101

      * Divide by zero
     D DivideByZero    C                   00102

      * An intermediate result is not large enough to contain the result.
     D IntResTooBig    C                   00103

      * Float underflow. An intermediate value is too small to be 
contained in the
      * intermediate result field.
     D IntResTooSmall  C                   00104

      * Invalid characters in character to numeric conversion functions.
     D Char2NumErr     C                   00105

      * Invalid Date, Time or Timestamp value.
     D InvalidDTZ      C                   00112

      * Date overflow or underflow. (For example, when the result of a 
      *   calculation results in a number greater than *HIVAL or less than 
     D DateRangeErr    C                   00113

      * Date mapping errors, where a Date is mapped from a 4-character 
year to a
      *   2-character year, and the date range is not 1940-2039.
     D DateMapErr      C                   00114

      * Variable-length field has a current length that is not valid.
     D FieldLenErr     C                   00115

      * Table or array out of sequence.
     D ArraySeqErr     C                   00120

      * Array index not valid
     D ArrayIndxErr    C                   00121

      * OCCUR outside of range
     D InvalidOccur    C                   00122

      * Reset attempted during initialization step of program
     D ResetErr        C                   00123

      * Called program or procedure failed; halt indicator (H1 through H9) 
not on
     D CallFail        C                   00202

      * Error calling program or procedure
     D ErrorOnCall     C                   00211

      * Pointer or parameter error
     D ParmError       C                   00222

      * Called program or procedure returned with halt indicator on
     D ReturnWithHalt  C                   00231

      * Halt indicator on in this program
     D HaltIsOn        C                   00232

      * Halt indicator on when RETURN operation run
     D HaltOnReturn    C                   00233

      * RPG IV formatted dump failed
     D DumpFail        C                   00299

      * Class or method not found for a method call, or error in method 
     D MethodCallErr   C                   00301

      * Error while converting a Java array to an RPG parameter on entry 
to a
      *   Java native method.
     D JNIEntryParmErr...
     D                 C                   00302

      * 00302 Error converting RPG parm to Java array on exit from an RPG 
native method.
     D JNIExitParmErr  C                   00302

      * Error converting RPG parameter to Java array in preparation for a 
      *   method call.
     D MethodCallErr   C                   00304

      * Error converting Java array to RPG parameter or return value after 
a Java method
     D MethodReturnErr...
     D                 C                   00305

      * Error converting RPG return value to Java array.
     D JNIReturnErr    C                   00306

      * Error on DSPLY operation
     D DSPLYErr        C                   00333

      * Data area specified on IN/OUT not found
     D DataAreaNotFnd  C                   00401

      * *PDA not valid for non-prestart job
     D PDAUsageErr     C                   00402

      * Data area type or length does not match
     D DtaAreMismatch  C                   00411

      * Data area not locked for output
     D DtaAraNotLocked...
     D                 C                   00412

      * Error on IN/OUT operation
     D DtaAraIOErr     C                   00413

      * User not authorized to use data area
     D DtaAraAutErr    C                   00414

      * User not authorized to change data area
     D DtaAraUpdErr    C                   00415

      * Error on UNLOCK operation
     D DtaAraUnlErr    C                   00421

      * Length requested for storage allocation is out of range
     D AllocSizeErr    C                   00425

      * Error encountered during storage management operation
     D StorageMgtErr   C                   00426

      * Data area previously locked by another program
     D DtaAraLckOther  C                   00431

      * Data area locked by program in the same process
     D DtaAraLckThis   C                   00432

      * Character field not entirely enclosed by shift-out and shift-in 
     D MissingSISO     C                   00450

      *Conversion between two CCSIDs is not supported.
     D CCSIDErr        C                   00451

      * Failure to retrieve sort sequence.
     D SortSeqRetFail  C                   00501

      * Failure to convert sort sequence.
     D SortSeqConvFail...
     D                 C                   00502

      * Commitment control not active.
     D CCNotActive     C                   00802

      * Rollback operation failed.
     D RollBackFail    C                   00803

      * Error occurred on COMMIT operation
     D CommitErr       C                   00804

      * Error occurred on ROLBK operation
     D RollBackErr     C                   00805

      * Decimal data error (digit or sign not valid)
     D DecDataErr      C                   00907

      * Errors indicative of RPG/System error

      * The level number of the compiler used to generate the program does 
      *    agree with the level number of the RPG IV run-time subroutines.
     D RPGLevelErr     C                   00970

      * Internal failure in ILE RPG compiler or in run-time subroutines
     D RPGErr          C                   09998

      * Program exception in system routine.
     D SystemErr       C                   09999

      * File related errors (*FILE category)
      *  Extracted from Chapter 5 - File Exception/Errors of the RPG IV 

      * (W,D,SQ) Tried to write a record that already exists
     D RecordExists    C                   01021

      * (D) Referential constraint error detected on file member.
     D RefConstErr     C                   01022

      * (D,SQ) Error in trigger program before file operation performed.
     D TriggerErrB     C                   01023

      * (D,SQ) Error in trigger program after file operation performed.
     D TriggerErrA     C                   01024

      * (W,D,SQ) Match field out of sequence.
     D MatchSeqErr     C                   01031

      * Array/table load sequence error.
     D LoadSeqErr      C                   01041

      * Array/table load sequence error. Alternate collating sequence 
     D LoadAltSeqErr   C                   01042

      * Excess entries in array/table file.
     D TooManyEntries  C                   01051

      * (W,D,SQ) Numeric sequence error.
     D NumSeqErr       C                   01071

      * (W) No indicator on the DDS keyword for Print key.
     D NoPrintKeyInd   C                   01121

      * (W) No indicator on the DDS keyword for Roll Up key.
     D NoRollUpKeyInd  C                   01122

      * (W) No indicator on the DDS keyword for Roll Down key.
     D NoRollDownKeyInd...
     D                 C                   01123

      * (W) No indicator on the DDS keyword for Clear key.
     D NoClearKeyInd   C                   01124

      * (W) No indicator on the DDS keyword for Help key.
     D NoHelpKeyInd    C                   01125

      * (W) No indicator on the DDS keyword for Home key.
     D NoHomeKeyInd    C                   01126

      * (W) 34xx Record mismatch detected on input.
     D RecMatchErr     C                   01201

      * (All) I/O operation to a closed file.
     D FileIsClosed    C                   01211

      * (All) OPEN issued to a file already opened.
     D FileIsOpen      C                   01215

      * (All) Error on an implicit OPEN/CLOSE operation.
     D OpenFailImp     C                   01216

      * (All) Error on an explicit OPEN/CLOSE operation.
     D OpenFailExp     C                   01217

      * (D,SQ) Record already locked.
     D RecordLocked    C                   01218

      * (D,SQ) Update operation attempted without a prior read.
     D UpdWithNoRead   C                   01221

      * (D,SQ) Record cannot be allocated due to referential constraint 
     D AllocErrRC      C                   01222

      * (SP) Error on SPECIAL file.
     D SpecialFileErr  C                   01231

      * (P) Error in PRTCTL space or skip entries.
     D PrtCtlErr       C                   01235

      * (D,SQ) Record number not found. (Record number specified in record
      *        address file is not present in file being processed.)
     D RAFError        C                   01241

      * (W) 80xx 81xx Permanent I/O error occurred.
     D PermIOErr       C                   01251

      * (W) 82xx 83xx Session or device error occurred. Recovery may be 
     D DeviceErr       C                   01255

      * (W) Attempt to exceed maximum number of acquired devices.
     D MaxAcqDevices   C                   01261

      * (W) Attempt to acquire unavailable device
     D DeviceNA        C                   01271

      * (W) Operation to unacquired device.
     D DeviceNotAcq    C                   01281

      * (W) 0309 Job ending with controlled option.
     D JobEnding       C                   01282

      * (W) Unable to acquire second device for single device file
     D CannotAcqDev    C                   01284

      * (W) 0800 Attempt to acquire a device already acquired.
     D AlreadyAcq      C                   01285

      * (W) Attempt to open shared file with SAVDS or IND options.
     D SharedOpenFail  C                   01286

      * (W) Response indicators overlap IND indicators.
     D IndOverlapErr   C                   01287

      * (W,D,SQ) Other I/O error detected.
     D OtherIOErr      C                   01299

      * (W) 0310 Wait time exceeded for READ from WORKSTN file.
     D ReadWaitExp     C                   01331

As I had in another member:
      * File status codes      *
     D NoError         C                   0
     D EndOfFile       C                   11
     D RecordNotFound  C                   12
     D DuplicateKey    C                   1021
     D ReferentialErr  C                   1022
     D TriggerErrBef   C                   1023
     D TriggerErrAft   C                   1024
     D YouAreOld       C                   1031
     D FileClosed      C                   1211
     D FileOpen        C                   1215
     D ImpOpenCloseEr  C                   1216
     D ExpOpenCloseEr  C                   1217
     D RecAlreadyLock  C                   1218
     D UpdBeforeRead   C                   1221
     D RefErrOnAlloc   C                   1222
     D PermIOErr       C                   1251
     D JobEndingCtl    C                   1282

Rob Berendt
"They that can give up essential liberty to obtain a little temporary 
safety deserve neither liberty nor safety." 
Benjamin Franklin 

"mlazarus@ttec.com" <mlazarus
Sent by: rpg400-l-bounces@midrange.com
01/24/2003 11:01 AM
Please respond to RPG programming on the AS400 / iSeries
        To:     rpg400-l@midrange.com
        Fax to: 
        Subject:        Re: How does the RPG MONITOR operation code work


 Would you mind posting your MemberWithListOfStatusCodes member?


Original Message:
From:  rob@dekko.com
Date: Fri, 24 Jan 2003 08:38:29 -0500
To: rpg400-l@midrange.com
Subject: Re: How does the RPG MONITOR operation code work

I think you are trying to mix and match a couple of different methods of 
error trapping.  IMHO that is not what you want to do in this situation.

Drop the MONITOR for this case.

Add the E extender as in

     D/include yourlib/yourfile,MemberWithListOfStatusCodes

       open (e) inputr;
       when not %error;
         exsr ChkData; 
       when %status = FileAlreadyOpened;
         // skip it
       when %status = GeneralExplicitError;
         // Look up major/minor return codes

mail2web - Check your email from the web at
http://mail2web.com/ .

This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list
To post a message email: RPG400-L@midrange.com
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo.cgi/rpg400-l
or email: RPG400-L-request@midrange.com
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.