A fix is available
APAR status
Closed as program error.
Error description
Data items which follow an SQL END-EXEC several times with no reference are not treated as invalid syntax by COBOL precompiler.
Local fix
n/a
Problem summary
**************************************************************** * USERS AFFECTED: All DB2 10 and 11 for z/OS users of * * the DB2 precompiler with COBOL * * applications. * **************************************************************** * PROBLEM DESCRIPTION: DB2 precompiler with a COBOL * * application does not get any syntax * * error when an SQL END-EXEC is followed * * by invalid data items without a period * * specified after END-EXEC. * **************************************************************** * RECOMMENDATION: * **************************************************************** No syntax error may be issued when invalid data items appear after an END-EXEC statement: Example: WORKING-STORAGE SECTION. . . 01 IS-THIS-AN-ERROR PIC X. 01 MYVAR2 PIC X(26). PROCEDURE DIVISION. PERFORM SQL-SELECT. GOBACK. SQL-SELECT SECTION. EXEC SQL SELECT CURRENT TIMESTAMP AS DUMMY INTO :MYVAR2 FROM SYSIBM.SYSDUMMY1 END-EXEC <<-- Invalid data items follow IS-THIS-AN-ERROR END-EXEC and there is no IS-THIS-AN-ERROR period after END-EXEC IS-THIS-AN-ERROR IS-THIS-AN-ERROR display MYVAR2 . SQL-SELECT-EXIT. EXIT. The above COBOL precompiler generated listing code will look like below but no syntax error message is displayed. PERFORM SQL-INITIAL UNTIL SQL-INIT-DONE CALL 'DSNHLI' USING SQL-PLIST1 IS-THIS-AN-ERROR IS-THIS-AN-ERROR IS-THIS-AN-ERROR display MYVAR2 . After the fix, the DB2 precompiler generates listing code with the END-CALL phrase, the DSNHPC precompiler return code will be changing from 04 to 00, and the IGYCRCTL COBOL compiler will issue error message IGYPS2072-S for the invalid data items. PERFORM SQL-INITIAL UNTIL SQL-INIT-DONE CALL 'DSNHLI' USING SQL-PLIST1 END-CALL <-- END-CALL phrase generated to IS-THIS-AN-ERROR separate SQL-PLIST and invalid IS-THIS-AN-ERROR data items. IS-THIS-AN-ERROR display MYVAR2 .
Problem conclusion
DB2 precompiler code has been enhanced to generate the END-CALL phrase for DSNHLI, DSNHLI2, and DSNHLIR. DB2 does not need to be restarted after applying this fix. Additional keywords: COBOL DSNHLI DSNHLI2 DSNHLIR
Temporary fix
Comments
APAR Information
APAR number
PI56129
Reported component name
DB2 OS/390 & Z/
Reported component ID
5740XYR00
Reported release
A10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2016-01-29
Closed date
2016-03-16
Last modified date
2016-04-05
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI36264 UI36265
Modules/Macros
DSNHSTMC
Fix information
Fixed component name
DB2 OS/390 & Z/
Fixed component ID
5740XYR00
Applicable component levels
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":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSEPEK","label":"Db2 for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"10.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"10.1","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
05 April 2016