The field for the return code has the following format:
The field with the return code can be addressed by DSECT after a macro call (field xxxRETC, generated by the macro FHDR) or via register 1 (see section “Example for theuse of the programming interface”).
Maincode
This field contains the exact error. It is divided into two bytes. The right byte shows the cause of error. It can have the following values (in decimal notation):
0: | call was error-free |
1: | the parameter field is partially or entirely in an invalid address space |
2: | the parameter may not yet be set in this version |
3: | the address or length field contradict the keyword field |
4: | the parameter entry contradicts another parameter |
10: | the buffer is too small; this error code is reserved for future expansions |
11: | the arithmetic parameter value (e.g. RECSIZE value) is invalid |
12: | the parameter value is too long or violates syntax rules;e.g. FILENAME, PASSWORD |
13: | the keyword entered is not permitted for this parameter |
14: | a mandatory parameter is missing |
70-255: | these error codes have the same meaning as the FTAC messages with the related FTC number |
The corresponding equates are defined in the macro YFSEQU with the prefix YFS1.
The left byte is only assigned a value other than 0 in the case of a parameter error. It specifies the erroneous parameter. The corresponding equates are defined in the macro YFSEQU with the prefix YFS2.
Subcode1
The error codes are divided into error classes. These are found in subcode 1. The following error classes exist:
Class | Value | Meaning |
A | 0 | the call was successfully completed |
B | 1 | permanent error, no repetition possible, there was a syntax error or equivalent parameter error |
C | 32 | system error |
D | 64 | repeat after correction of user input |
E | 128 | wait and repeat |
The corresponding equates are defined in the macro YFSEQU with the prefix YFSC.
Subcode2
This field contains a warning, if the macro was completed successfully (subcode1 = 0 and maincode = 0) but the macro couldn’t be executed - for instance, if no files could be found during the SHWFTPRF call. The corresponding equates are defined in the macro YFSEQU with the prefix YFSW.
Exception
If the maincode contains the value X’FFFF’, the request could not be executed for reasons specified uniquely throughout the system. The equates valid in this case for maincode, subcode1 and subcode2 are defined in the macro FHDR, which generates the default header.
The following information can be defined in the macro YFSEQU:
* ERROR CODES
*
YFSOK EQU 0 NO ERROR
*
* MAIN CODE VALUES
* PERMANENT ERRORS
* BYTE 1 DEFINES THE ERROR
*
YFS1INVA EQU 1 INVALID ADDRESS OF PARAMETER VALUE
YFS1RES EQU 2 PARAMETER RESERVED FOR FUTURE USE
YFS1INC EQU 3 PARAMETER AND INDICATOR INCONSISTENT
YFS1PINC EQU 4 INCONSISTENCY WITH OTHER PARAMETER
* REPARABLE ERRORS
YFS1BUFS EQU 10 BUFFER TOO SMALL
YFS1RNGE EQU 11 PARAMETER VALUE OUT OF RANGE
YFS1YERR EQU 12 WRONG SYNTAX IN PARAMETER VALUE
YFS1KEYV EQU 13 INVALID KEYWORD VALUE
YFS1MAND EQU 14 MANDATORY PARAMETER MISSING
* SHORTAGE OF RESOURCES
YFS1SHRT EQU 70 SHORTAGE OF RESOURCES
YFS1INAC EQU 71 FTAC NOT ACTIVE
* REPARABLE ERRORS
YFS1PROF EQU 100 PROFILE ALREADY EXISTS
YFS1TAD EQU 101 TRANSFER-ADMISSION ALREADY EXISTS
YFS1FILE EQU 102 FILE-NAME ALREADY EXISTS
YFS1FINV EQU 103 INVALID FILE CONTENT
* PERMANENT ERRORS
YFS1PASS EQU 150 USER NOT AUTH. FOR FTAC COMMANDS
YFS1MOD EQU 151 USER NOT AUTH. FOR THIS MODIFIC.
YFS1USER EQU 152 USER NOT AUTH. FOR OTHER USERID'S
YFS1OWNR EQU 153 USER NOT AUTH. FOR OTHER OWNERID'S
YFS1DEL EQU 154 USER NOT AUTH. TO DEL LOGGING RECS
YFS1DIAG EQU 155 USER NOT AUTH. FOR DIAGNOSE
YFS1UPRT EQU 170 GIVEN PARTNERNAME UNKNOWN
YFS1UPRF EQU 171 GIVEN PROFILENAME UNKNOWN
YFS1IUAD EQU 172 INVALID USER-ADMISSION
YFS1IPAD EQU 173 INVALID PROCESSING-ADMISSION
YFS1IMUS EQU 174 INVALID MODIF. FOR NOT UNIQUE SELECTION
YFS1ISTD EQU 175 MODIFICATION INVALID FOR *STD
YFS1IUID EQU 176 GIVEN USERID UNKNOWN
YFS1UFIL EQU 177 FILENAME UNKNOWN
YFS1PANU EQU 178 GIVEN PARTNERNAME NOT UNIQUE
YFS1PAVI EQU 179 VIOLATION OF MAX. NUMBER OF PARTNER
YFS1USNU EQU 180 GIVEN USER IDENTIFICATION NOT UNIQUE
YFS1PRNU EQU 181 GIVEN PROFILE NAME NOT UNIQUE
YFS1LENP EQU 200 SUCCESS AND FAILURE PROC TOO LONG
YFS1PFLO EQU 206 PARTIALLY QUALIFIED FILENAME TOO LONG
* SYSTEM ERROR
YFS1SERR EQU 255 SYSTEM ERROR
*
* BYTE2 DEFINES THE ERRONEOUS PARAMETER
*
YFS2PAR EQU 1 INVALID ADDRESS OF PARAMETER LIST
YFS2NAME EQU 2 NAME
YFS2NNAM EQU 3 NEWNAME
YFS2OWN EQU 4 OWNER
YFS2USER EQU 5 USER
YFS2SEL EQU 6 SELECT
YFS2PASS EQU 7 PASSWORD
YFS2NPA EQU 8 NEW PASSWORD
YFS2TAD EQU 9 TRANSFER ADMISSION
YFS2NTAD EQU 10 NEW TRANSFER ADMISSION
YFS2MOSN EQU 11 MAX LEVEL OUTBOUND-SEND
YFS2MORC EQU 12 MAX LEVEL OUTBOUND-RECEIVE
YFS2MISN EQU 13 MAX LEVEL INBOUND-SEND
YFS2MIRC EQU 14 MAX LEVEL INBOUND-RECEIVE
YFS2MIPR EQU 15 MAX LEVEL INBOUND-PROCESSING
YFS2MIMA EQU 16 MAX LEVEL INBOUND-MANAGEMENT
YFS2ILV EQU 21 IGNORE MAX LEVEL
YFS2IOSN EQU 22 IGNORE MAX LEVEL OUTBOUND-SEND
YFS2IORC EQU 23 IGNORE MAX LEVEL OUTBOUND-RECEIVE
YFS2IISN EQU 24 IGNORE MAX LEVEL INBOUND-SEND
YFS2IIRC EQU 25 IGNORE MAX LEVEL INBOUND-RECEIVE
YFS2IIPR EQU 26 IGNORE MAX LEVEL INBOUND-PROCESSING
YFS2IIMA EQU 27 IGNORE MAX LEVEL INBOUND-MANAGEMENT
YFS2MPLV EQU 32 MAX PARTNER LEVEL
YFS2PART EQU 33 PARTNER NAME
YFS2UAD EQU 34 USER ADMISSION
YFS2UUS EQU 35 USERID
YFS2UAC EQU 36 ACCOUNT NUMBER
YFS2UPA EQU 37 USER PASSWORD
YFS2PAD EQU 38 PROCESSING ADMISSION
YFS2PUS EQU 39 USERID
YFS2PAC EQU 40 ACCOUNT NUMBER
YFS2PPA EQU 41 PASSWORD
YFS2FIL EQU 42 FILENAME
YFS2PFIL EQU 43 PREFIX OF FILENAME
YFS2LIB EQU 44 LIBRARY NAME
YFS2PLIB EQU 45 PREFIX OF LIBRARY NAME
YFS2EL EQU 46 ELEMENT NAME
YFS2PEL EQU 47 PREFIX OF ELEMENT NAME
YFS2EV EQU 48 ELEMENT VERSION
YFS2ETY EQU 49 ELEMENT TYPE
YFS2FPA EQU 50 FILE PASSWORD
YFS2SUC EQU 51 SUCCESS PROCESSING
YFS2PSUC EQU 52 PREFIX OF SUCCESS PROCESSING
YFS2FAI EQU 53 FAILURE PROCESSING
YFS2PFAI EQU 54 PREFIX OF FAILURE PROCESSING
YFS2PRIV EQU 55 PRIVILEGED
YFS2INIT EQU 56 TRANSFER INITIATOR
YFS2TDIR EQU 57 TRANSFER DIRECTION
YFS2WMOD EQU 58 WRITE MODE
YFS2INFO EQU 59 INFORMATION
YFS2OUTP EQU 60 OUTPUT
YFS2BUF EQU 61 BUFFER
YFS2RES EQU 64 RESERVED
YFS2DATE EQU 65 DATE
YFS2FTFU EQU 66 FT-FUNCTION
YFS2ADMS EQU 67 ADMISSION SET
YFS2XSUC EQU 68 SUFFIX OF SUCCESS PROCESSING
YFS2XFAI EQU 69 SUFFIX OF FAILURE PROCESSING
YFS2USAG EQU 70 USAGE
YFS2VALI EQU 71 VALID
YFS2TEXT EQU 72 TEXT
YFS2CHIP EQU 73 CHIP
YFS2DENC EQU 74 DENC
*
* SUBCODE1 DEFINES THE ERROR CLASS
*
YFSCOK EQU 0 NO ERROR
YFSCPERR EQU 1 PERMANENT ERROR
YFSCSERR EQU 32 SYSTEM ERROR
YFSCRERR EQU 64 REPARABLE ERROR
YFSCSHRT EQU 128 SHORTAGE OF RESOURCES
*
* SUBCODE2 DEFINES THE WARNINGS
*
YFSWLLEV EQU 50 LOWER ADM-LEVEL REMAINS IN EFFECT
YFSWWARN EQU 51 TRANSFER-ADMISSION EXISTS AS USERID
YFSWINFI EQU 52 INFORMATION INCOMPLETE
YFSWNPRF EQU 53 NO PROFILE FOUND
YFSWNINF EQU 54 NO INFORMATION AVAILABLE
YFSWPANR EQU 55 PARTNER RESTRICT. DOES NOT LONGER EXIST
YFSWTADL EQU 56 TRANSFER ADMISSION LOCKED
*
FHDR MF=(C,&P),EQUATES=ONLY
