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