IBM Support

PH37701: COBOL 5+ internal SORT of file with carriage control doesn't properly preserve the carriage control

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When a file with carriage control is sorted with a program
    compiled with the compiler option
    
    ADV:   A blank is inserted at the beginning of the record ahead
           of the carriage control column, and a byte is dropped
           from the end. (The prior runtime's SORT also incorrectly
           drops a byte from the end in this case but replaces it
           with a binary zero byte.)
    
    NOADV: A blank replaces the carriage control column.
    
    ADV compiler option
    https://www.ibm.com/docs/en/cobol-zos/6.3?topic=options-adv
    

Local fix

  • Use an external sort if possible.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL 6.2 compiling and  *
    *                 running programs that contain a SORT         *
    *                 statement with a USING clause that           *
    *                 references a sequential file containing      *
    *                 carriage control characters and a GIVING     *
    *                 clause that references a sequential file     *
    *                 that is the subject of one or more WRITE     *
    *                 statements with ADVANCING phrase.            *
    ****************************************************************
    * PROBLEM DESCRIPTION: Incorrect result.  Carriage control     *
    *                      characters in the input file to sort    *
    *                      are missing from the output file.       *
    ****************************************************************
    * RECOMMENDATION: Apply the IBM-provided PTF.                  *
    ****************************************************************
    When sorted records containing carriage control characters were
    being written to the sort output file, the carriage control
    characters were inadvertently lost because an incorrect method
    of writing the records was used, which happened because the
    output file was the subject of WRITE statements with the
    ADVANCING phrase.
    

Problem conclusion

  • The compiler was updated to ensure that when writing to the sort
    output file, any carriage control characters in sort records are
    preserved.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH37701

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655EC600

  • Reported release

    620

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2021-05-28

  • Closed date

    2021-08-19

  • Last modified date

    2021-09-22

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    PH40827

Modules/Macros

  • IGY8RWTU IGYCASMB IGYCCBE  IGYCCCRT IGYCCICS IGYCCSRV IGYCDGEN
    IGYCDIAG IGYCDMAP IGYCEN$0 IGYCEN$1 IGYCEN$2 IGYCEN$3 IGYCEN$4
    IGYCEN$5 IGYCEN$8 IGYCEN$D IGYCEN$R IGYCFGEN IGYCFREE IGYCINIT
    IGYCJA$0 IGYCJA$1 IGYCJA$2 IGYCJA$3 IGYCJA$4 IGYCJA$5 IGYCJA$8
    IGYCJA$D IGYCJA$R IGYCLIBH IGYCLIBO IGYCLIBR IGYCLSTR IGYCLVL0
    IGYCLVL1 IGYCLVL2 IGYCLVL3 IGYCLVL8 IGYCMALL IGYCOPI  IGYCOSCN
    IGYCPGEN IGYCRCTL IGYCRDPR IGYCRDSC IGYCREAL IGYCRWT  IGYCSCAN
    IGYCSIMD IGYCUE$0 IGYCUE$1 IGYCUE$2 IGYCUE$3 IGYCUE$4 IGYCUE$5
    IGYCUE$8 IGYCUE$D IGYCUE$R IGYCXREF IGYDRV   IGYEQCWI IGYMSGE
    IGYMSGK  IGYMSGT  IGYQCBE  IGYZQDRV IGYZQENU IGYZQJPN
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655EC600

Applicable component levels

  • R620 PSY UI76842

       UP21/08/27 P F108

  • R621 PSY UI76843

       UP21/08/27 P F108

  • R622 PSY UI76844

       UP21/08/27 P F108

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"620","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
12 December 2023