Summary -

In this topic, we described about the 22 LENGERR with detailed example.

If this error condition occurred, the task gets abnormally terminated.

CommandRESP2, Description & Solution
GETMAIN 1 - The FLENGTH value is less than 1 or greater than the length of the target dynamic storage area.

Solution: - Modify the program logic to pass valid value to FLENGTH.
LINK 11 - The COMMAREA length is less than 0 or greater than the permitted length.

Solution: - Debug the application program to verify the COMMAREA length. If the COMMAREA length specified is less than zero, modify it according to the data. If the COMMAREA length is greater than permitted length, use other ways to pass the data from program to program.

12 - The length specified on the DATALENGTH option is a negative value.

Solution: - Length specified in DATALENGTH should not be negative. Modify the program to correct the length value.

13 - The length specified on the DATALENGTH option is greater than the length specified on the LENGTH option.

Solution: - Length specified in DATALENGTH should not be greater than the length value specified in LENGTH option. The length value should be same in both options.

26 - The COMMAREA address is zero, but the COMMAREA length is nonzero.

Solution: - COMMAREA address should be a valid address. Debug the application program to verify how COMMAREA address is not set.

27 - The INPUTMSG length is less than 0 or greater than 32767.

Solution: - Debug the application program to verify the INPUTMSG length. If the INPUTMSG length specified is less than zero, modify it according to the data. If the INPUTMSG length is greater than 32767, use other ways to pass the data from program to program.
LOAD 19 - LENGTH is used and the length of the loaded program is greater than 32 KB.

Solution: - Modify the application program to change the LENGTH option to FLENGTH.
READ
READNEXT
READPREV
10 - Neither the LENGTH option nor the SET option is specified on a READ command for a file with variable-length records or for a BDAM file with variable-length or undefined-format records.

Solution: - Either LENGTH option or SET option should be specified for the files in the above case. Modify the program to specify either LENGTH or SET option.

11 - The length of a record read with the INTO option exceeds the value specified in the LENGTH option.

Solution: - The length option specified with LENGTH option should equal to the record read length. If you are not aware of the length, specify it as a MAXLENGTH.

13 - An incorrect length is specified for a file with fixed-length records.

Solution: - Modify the program to specify the file fixed length as a length value to resolve the issue.
READQ TD Occurs if READQ INTO area is shorter than the data read from queue or an invalid length has been supplied.

Solution: - This should be resolved in the program.
If the length value specified is shorter than the retrieved data area length, modify the length value according to the data area length. If you are not aware of the data area length before retrieval, provide the maximum allowed length value.
If the invalid length value specified, modify it according to the data area length to resolve the issue.
READQ TS The retrieved data area length is more than the specified length in LENGTH. This only happens for INTO not to SET.

Solution: - The specified length value should be same as the retrieved data area length. If using INTO option, the LENGTH should be specified. If you are not aware of the length, use maximum record length.
RETURN 11 - The COMMAREA length is less than 0 or greater than 32763.

Solution: - Debug the application program to verify the COMMAREA length. If the COMMAREA length specified is less than zero, modify it according to the data. If the COMMAREA length is greater than 32763, use other ways to pass the data from program to program.

26 - The COMMAREA ADDRESS passed was zero, but the COMMAREA length was non-zero.

Solution: - Debug the application program and correct the COMMAREA ADDRESS or COMMAREA length.

27 - The INPUTMSG LENGTH was less than 0 or greater than 32767.

Solution: - Debug the application program to verify the INPUTMSG length. If the INPUTMSG length specified is less than zero, modify it according to the data. If the INPUTMSG length is greater than 32767, use other ways to pass the data from program to program.
REWRITE 10 - The LENGTH option is not specified or a file with variable-length records, or for a BDAM file with undefined format records.

Solution: - Modify the program to specify the LENGTH option if not specified.
For variable-length records, use the same length got while reading the record with READ UPDATE command.

12 - The length specified exceeds the maximum record size and the record is truncated.

Solution: - The length of the record should not exceed maximum length. Use best possible solution to write the record without truncating.

14 - An incorrect length is specified for a file with fixed-length records.

Solution: - Modify the program to specify the correct length to resolve the issue.
SEND TEXT Occurs if an out-of-range value is supplied in the LENGTH option.

Solution: - Modify the application program to make sure the length value within the bounds.
WRITE 12 - The length specified for the write operation exceeds the maximum record size and the record is truncated.

Solution: - The length of the record should not exceed maximum length. Use best possible solution to write the record without truncating.

10 - The LENGTH option is not specified.

Solution: - Modify the program to specify the LENGTH option.

14 - An incorrect length is specified for a fixed-length records.

Solution: - Modify the program to specify the correct length to resolve the issue.
WRITEQ TS The length of the stored data area is zero or negative or greater than 32763.

Solution: - Add the data area length check before writing it to the TSQ.
If the stored data length is zero, do not attempt to write it to the TSQ.
If the length is negative, change the length according to the data area length and try again.
If the length is greater than 32763, split up the record and write them.
WRITEQ TD Occurs in either of the following situations:
  • WRITEQ names an extra-partition queue and does not specify a length consistent with the RECORDSIZE and associated formations specified in the TDQUEUE resource definition.

    Solution: - Specify the RECORDSIZE and associated formations in TDQUEUE resource definition. If you have no access, contact system administrator to do the same.
  • WRITEQ names an intra-partition queue and does not specify a length consistent with the control interval defined for the intra-partition data set.

    Solution: - Specify the length with the control interval for TDQUEUE resource definition. If you have no access, contact system administrator to do the same.
XCTL 11 - The COMMAREA length is less than 0 or greater than the permitted length.

Solution: - Debug the application program to verify the COMMAREA length. If the COMMAREA length specified is less than zero, modify it according to the data. If the COMMAREA length is greater than permitted length, use other ways to pass the data from program to program.

26 - The COMMAREA address is zero, but the COMMAREA length is nonzero.

Solution: - COMMAREA address should be a valid address. Debug the application program to verify how COMMAREA address is not set.

27 - The INPUTMSG length is less than 0 or greater than 32767.

Solution: - Debug the application program to verify the INPUTMSG length. If the INPUTMSG length specified is less than zero, modify it according to the data. If the INPUTMSG length is greater than 32767, use other ways to pass the data from program to program.

28 - LENGTH or INPUTMSGLEN is greater than the length of the data area specified in the COMMAREA or INPUTMSG options.

Solution: - Modify the LENGTH or INPUTMSGLEN according to the COMMAREA or INPUTMSG data area length.