From 742f8e3e25049f879e9ab5c6f0413b5611d9db2d Mon Sep 17 00:00:00 2001 From: Hartanto Ario Widjaya Date: Tue, 8 Feb 2022 11:23:04 +0800 Subject: [PATCH 1/3] Add SPDX ID to Lab Materials Signed-off-by: Hartanto Ario Widjaya --- .../Labs/cbl/ADDAMT.cobol | 4 + .../Labs/cbl/CBL0001.cobol | 3 + .../Labs/cbl/CBL0002.cobol | 3 + .../Labs/cbl/CBL0004.cobol | 3 + .../Labs/cbl/CBL0005.cobol | 3 + .../Labs/cbl/CBL0006.cobol | 3 + .../Labs/cbl/CBL0007.cobol | 3 + .../Labs/cbl/CBL0008.cobol | 3 + .../Labs/cbl/CBL0009.cobol | 3 + .../Labs/cbl/CBL0010.cobol | 3 + .../Labs/cbl/CBL0011.cobol | 3 + .../Labs/cbl/CBL0012.cobol | 3 + .../Labs/cbl/CBL0033.cobol | 3 + .../Labs/cbl/COBOL.cobol | 4 + .../Labs/cbl/HELLO.cobol | 4 + .../Labs/cbl/PAYROL00.cobol | 4 + .../Labs/cbl/PAYROL0X.cobol | 4 + .../Labs/cbl/SRCHBIN.cobol | 3 + .../Labs/cbl/SRCHSER.cobol | 3 + .../Labs/jcl/ADDAMT.jcl | 3 + .../Labs/jcl/CBL0001J.jcl | 3 + .../Labs/jcl/CBL0002J.jcl | 3 + .../Labs/jcl/CBL0003J.jcl | 3 + .../Labs/jcl/CBL0004J.jcl | 3 + .../Labs/jcl/CBL0005J.jcl | 3 + .../Labs/jcl/CBL0006J.jcl | 3 + .../Labs/jcl/CBL0007J.jcl | 3 + .../Labs/jcl/CBL0008J.jcl | 3 + .../Labs/jcl/CBL0009J.jcl | 3 + .../Labs/jcl/CBL0010J.jcl | 3 + .../Labs/jcl/CBL0011J.jcl | 3 + .../Labs/jcl/CBL0012J.jcl | 3 + .../Labs/jcl/CBL0033J.jcl | 3 + .../Labs/jcl/COBRUN.jcl | 3 + .../Labs/jcl/HELLO.jcl | 4 + .../Labs/jcl/PAYROL00.jcl | 4 + .../Labs/jcl/PAYROL0X.jcl | 4 + .../Labs/jcl/SRCHBINJ.jcl | 3 + .../Labs/jcl/SRCHSERJ.jcl | 3 + .../Challenges/Debugging/cbl/CBL0106.cbl | 3 + .../Challenges/Debugging/cbl/CBL0106C.cbl | 3 + .../Challenges/Debugging/jcl/CBL0106J.jcl | 3 + .../Labs/cbl/CBLDB21.cbl | 208 ++++++------ .../Labs/cbl/CBLDB22.cbl | 296 +++++++++--------- .../Labs/cbl/CBLDB23.cbl | 270 ++++++++-------- .../Labs/jcl/CBLDB21C.jcl | 4 + .../Labs/jcl/CBLDB21R.jcl | 9 +- .../Labs/jcl/CBLDB22C.jcl | 4 + .../Labs/jcl/CBLDB22R.jcl | 9 +- .../Labs/jcl/CBLDB23C.jcl | 4 + .../Labs/jcl/CBLDB23R.jcl | 9 +- .../Labs/jcl/CRETBL.jcl | 66 ++-- .../Labs/jcl/DB2SETUP.jcl | 4 + .../Labs/jcl/DBRMLIB.jcl | 4 + .../Labs/jcl/LOADTBL.jcl | 4 + .../Labs/jcl/SELTBL.jcl | 14 +- 56 files changed, 613 insertions(+), 426 deletions(-) diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/ADDAMT.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/ADDAMT.cobol index e7dec43e..810e7d09 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/ADDAMT.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/ADDAMT.cobol @@ -1,3 +1,7 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- IDENTIFICATION DIVISION. PROGRAM-ID. ADDAMT. diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0001.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0001.cobol index 97b01d93..328d8548 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0001.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0001.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0002.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0002.cobol index 1bf15e5f..c4d6f6a6 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0002.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0002.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0004.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0004.cobol index 93bd0113..a9cf92ec 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0004.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0004.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0005.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0005.cobol index efb49883..884b8f34 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0005.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0005.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0006.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0006.cobol index 25d7bfa7..64257713 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0006.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0006.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0007.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0007.cobol index 6fb17f8a..5de79fb6 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0007.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0007.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0008.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0008.cobol index f8b38511..1306d4be 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0008.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0008.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0009.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0009.cobol index b3995d50..f32c0e2d 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0009.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0009.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0010.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0010.cobol index 07ee84ad..9303b655 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0010.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0010.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0011.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0011.cobol index 0afb72e8..1e22b9a1 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0011.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0011.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0012.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0012.cobol index f049942f..fa8a34a8 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0012.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0012.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0033.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0033.cobol index d343f915..4ef25610 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0033.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/CBL0033.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/COBOL.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/COBOL.cobol index fbde549e..6d42cc3e 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/COBOL.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/COBOL.cobol @@ -1,3 +1,7 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- IDENTIFICATION DIVISION. PROGRAM-ID. COBOL. AUTHOR. STUDENT. diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/HELLO.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/HELLO.cobol index 7720d034..ac589136 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/HELLO.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/HELLO.cobol @@ -1,3 +1,7 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. PROCEDURE DIVISION. diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL00.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL00.cobol index 924b819b..9bef7ee1 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL00.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL00.cobol @@ -1,3 +1,7 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- * COBOL reference format (Figure 1., page 32) *Columns: * 1 2 3 4 5 6 7 diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL0X.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL0X.cobol index ca2ee3f3..36e72936 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL0X.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/PAYROL0X.cobol @@ -1,3 +1,7 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- IDENTIFICATION DIVISION. PROGRAM-ID. PAYROL0X. DATA DIVISION. diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHBIN.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHBIN.cobol index dadcffae..cb43f47f 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHBIN.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHBIN.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHSER.cobol b/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHSER.cobol index 5e2fa39f..66924617 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHSER.cobol +++ b/COBOL Programming Course #1 - Getting Started/Labs/cbl/SRCHSER.cobol @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/ADDAMT.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/ADDAMT.jcl index a5896cb7..05cbe52c 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/ADDAMT.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/ADDAMT.jcl @@ -1,5 +1,8 @@ //ADDAMT JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(ADDAMT),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(ADDAMT),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0001J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0001J.jcl index 793e98f3..d05174b1 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0001J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0001J.jcl @@ -1,5 +1,8 @@ //CBL0001J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0001),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0001),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0002J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0002J.jcl index 398b50b2..ae3a21ad 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0002J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0002J.jcl @@ -1,5 +1,8 @@ //CBL0002J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0002),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0002),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0003J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0003J.jcl index dc8e22de..9ff2f7b4 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0003J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0003J.jcl @@ -1,5 +1,8 @@ //CBL0003J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0001),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0001),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0004J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0004J.jcl index 899ab5b9..da442e7a 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0004J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0004J.jcl @@ -1,5 +1,8 @@ //CBL0004J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0004),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0004),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0005J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0005J.jcl index 6a4f8627..7373186d 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0005J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0005J.jcl @@ -1,5 +1,8 @@ //CBL0005J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0005),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0005),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0006J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0006J.jcl index bde372fa..f22e3d2c 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0006J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0006J.jcl @@ -1,5 +1,8 @@ //CBL0006J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0006),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0006),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0007J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0007J.jcl index 6d1f155e..285e6d7f 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0007J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0007J.jcl @@ -1,5 +1,8 @@ //CBL0007J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0007),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0007),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0008J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0008J.jcl index 53262437..e1db9044 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0008J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0008J.jcl @@ -1,5 +1,8 @@ //CBL0008J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0008),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0008),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0009J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0009J.jcl index fe666304..b114e4df 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0009J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0009J.jcl @@ -1,5 +1,8 @@ //CBL0009J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0009),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0009),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0010J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0010J.jcl index 76f910c5..d82b44db 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0010J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0010J.jcl @@ -1,5 +1,8 @@ //CBL0010J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0010),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0010),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0011J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0011J.jcl index 25ab3532..17eb323b 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0011J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0011J.jcl @@ -1,5 +1,8 @@ //CBL0011J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0011),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0011),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0012J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0012J.jcl index 7ab7725d..00393956 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0012J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0012J.jcl @@ -1,5 +1,8 @@ //CBL0012J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0012),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0012),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0033J.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0033J.jcl index 735b89af..9a858020 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0033J.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/CBL0033J.jcl @@ -1,5 +1,8 @@ //CBL0033J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(HELLO),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(HELLO),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/COBRUN.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/COBRUN.jcl index b3809bc1..0e097334 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/COBRUN.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/COBRUN.jcl @@ -1,5 +1,8 @@ //COBOL JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(COBOL),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(COBEXEC),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/HELLO.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/HELLO.jcl index 483a91a2..5516863d 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/HELLO.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/HELLO.jcl @@ -1,2 +1,6 @@ //HELLOCBL JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCLG,SRC=HELLO diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL00.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL00.jcl index 92afac3a..a9b5fe0c 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL00.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL00.jcl @@ -1,2 +1,6 @@ //PAYROL00 JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //PAYROLL EXEC IGYWCLG,SRC=PAYROL00 diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL0X.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL0X.jcl index 31c703a2..bef63f60 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL0X.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/PAYROL0X.jcl @@ -1,2 +1,6 @@ //PAYROL0X JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //PAYROLL EXEC IGYWCLG,SRC=PAYROL0X diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHBINJ.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHBINJ.jcl index 8db19132..de66dab0 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHBINJ.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHBINJ.jcl @@ -1,5 +1,8 @@ //SRCHBINJ JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(SRCHBIN),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(SRCHBIN),DISP=SHR diff --git a/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHSERJ.jcl b/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHSERJ.jcl index 067bb94a..8010f44b 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHSERJ.jcl +++ b/COBOL Programming Course #1 - Getting Started/Labs/jcl/SRCHSERJ.jcl @@ -1,5 +1,8 @@ //SRCHSERJ JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(SRCHSER),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(SRCHSER),DISP=SHR diff --git a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106.cbl b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106.cbl index 924a283f..8f183b62 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106.cbl +++ b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106.cbl @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106C.cbl b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106C.cbl index b2654355..380fe51b 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106C.cbl +++ b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/cbl/CBL0106C.cbl @@ -1,3 +1,6 @@ + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 *----------------------- IDENTIFICATION DIVISION. *----------------------- diff --git a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/jcl/CBL0106J.jcl b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/jcl/CBL0106J.jcl index b2293094..be4cbf1d 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/jcl/CBL0106J.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging/jcl/CBL0106J.jcl @@ -1,5 +1,8 @@ //CBL0106J JOB 1,NOTIFY=&SYSUID //***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COBRUN EXEC IGYWCL //COBOL.SYSIN DD DSN=&SYSUID..CBL(CBL0106),DISP=SHR //LKED.SYSLMOD DD DSN=&SYSUID..LOAD(CBL0106),DISP=SHR diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB21.cbl b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB21.cbl index 9785ed40..79547508 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB21.cbl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB21.cbl @@ -1,102 +1,106 @@ - IDENTIFICATION DIVISION. 00010000 - *----------------------- 00020000 - PROGRAM-ID. CBLDB21 00021000 - AUTHOR. Otto B. Relational 00022000 - 00040000 - ENVIRONMENT DIVISION. 01290000 - *-------------------- 01300000 - CONFIGURATION SECTION. 01310000 - INPUT-OUTPUT SECTION. 01330000 - FILE-CONTROL. 01340000 - SELECT REPOUT 01370000 - ASSIGN TO UT-S-REPORT. 01380000 - 01390000 - DATA DIVISION. 01400000 - *------------- 01410000 - FILE SECTION. 01420000 - FD REPOUT 01490000 - RECORD CONTAINS 120 CHARACTERS 01500000 - LABEL RECORDS ARE OMITTED 01510000 - DATA RECORD IS REPREC. 01520000 - 01521000 - 01 REPREC. 01530000 - 05 ACCT-NO-O PIC X(8). 01541000 - 05 ACCT-LIMIT-O PIC $$,$$$,$$9.99. 01542000 - 05 ACCT-BALANCE-O PIC $$,$$$,$$9.99. 01543000 - 05 ACCT-LASTN-O PIC X(20). 01544000 - 05 ACCT-FIRSTN-O PIC X(15). 01545000 - 05 ACCT-COMMENT-O PIC X(50). 01546000 - 01547000 - WORKING-STORAGE SECTION. 01550000 - ***************************************************** 02531000 - * SQL INCLUDE FOR SQLCA * 02532000 - ***************************************************** 02533000 - EXEC SQL INCLUDE SQLCA END-EXEC. 02534000 - ***************************************************** 02535000 - * SQL DECLARATION FOR VIEW ACCOUNTS * 02536000 - ***************************************************** 02537000 - EXEC SQL DECLARE Z#####T TABLE 02538000 - (ACCTNO CHAR(8) NOT NULL, 02539000 - LIMIT DECIMAL(9,2) , 02539100 - BALANCE DECIMAL(9,2) , 02539200 - SURNAME CHAR(20) NOT NULL, 02539300 - FIRSTN CHAR(15) NOT NULL, 02539400 - ADDRESS1 CHAR(25) NOT NULL, 02539500 - ADDRESS2 CHAR(20) NOT NULL, 02539600 - ADDRESS3 CHAR(15) NOT NULL, 02539700 - RESERVED CHAR(7) NOT NULL, 02539800 - COMMENTS CHAR(50) NOT NULL) 02539900 - END-EXEC. 02540100 - ***************************************************** 02540200 - * SQL CURSORS * 02540300 - ***************************************************** 02540400 - EXEC SQL DECLARE CUR1 CURSOR FOR 02540700 - SELECT * FROM Z#####T 02540900 - END-EXEC. 02541000 - ***************************************************** 02542000 - * STRUCTURE FOR CUSTOMER RECORD * 02543000 - ***************************************************** 02544000 - 01 CUSTOMER-RECORD. 02545000 - 02 ACCT-NO PIC X(8). 02546000 - 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. 02547000 - 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. 02548000 - 02 ACCT-LASTN PIC X(20). 02549000 - 02 ACCT-FIRSTN PIC X(15). 02550000 - 02 ACCT-ADDR1 PIC X(25). 02560000 - 02 ACCT-ADDR2 PIC X(20). 02570000 - 02 ACCT-ADDR3 PIC X(15). 02580000 - 02 ACCT-RSRVD PIC X(7). 02590000 - 02 ACCT-COMMENT PIC X(50). 02600000 - 03280000 - PROCEDURE DIVISION. 03290000 - *------------------ 03300000 - 03310000 - ***************************************************** 03390000 - * MAIN PROGRAM ROUTINE * 03400000 - ***************************************************** 03410000 - PROG-START. 03420000 - OPEN OUTPUT REPOUT. 03450000 - PERFORM LIST-ALL. 03520000 - PROG-END. 03540000 - CLOSE REPOUT. 03570000 - GOBACK. 03580006 - ***************************************************** 04270000 - * LIST ALL CLIENTS * 04280000 - ***************************************************** 04290000 - LIST-ALL. 04300000 - EXEC SQL OPEN CUR1 END-EXEC. 04320000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 04350000 - PERFORM PRINT-AND-GET1 04470000 - UNTIL SQLCODE IS NOT EQUAL TO ZERO. 04480000 - EXEC SQL CLOSE CUR1 END-EXEC. 04510000 - PRINT-AND-GET1. 04530000 - PERFORM PRINT-A-LINE. 04540000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 04560000 - PRINT-A-LINE. 05200000 - MOVE ACCT-NO TO ACCT-NO-O. 05220000 - MOVE ACCT-LIMIT TO ACCT-LIMIT-O. 05230000 - MOVE ACCT-BALANCE TO ACCT-BALANCE-O. 05240000 - MOVE ACCT-LASTN TO ACCT-LASTN-O. 05250000 - MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. 05260000 - MOVE ACCT-COMMENT TO ACCT-COMMENT-O. 05270000 - WRITE REPREC AFTER ADVANCING 2 LINES. 05310000 + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- + IDENTIFICATION DIVISION. + *----------------------- + PROGRAM-ID. CBLDB21 + AUTHOR. Otto B. Relational + + ENVIRONMENT DIVISION. + *-------------------- + CONFIGURATION SECTION. + INPUT-OUTPUT SECTION. + FILE-CONTROL. + SELECT REPOUT + ASSIGN TO UT-S-REPORT. + + DATA DIVISION. + *------------- + FILE SECTION. + FD REPOUT + RECORD CONTAINS 120 CHARACTERS + LABEL RECORDS ARE OMITTED + DATA RECORD IS REPREC. + + 01 REPREC. + 05 ACCT-NO-O PIC X(8). + 05 ACCT-LIMIT-O PIC $$,$$$,$$9.99. + 05 ACCT-BALANCE-O PIC $$,$$$,$$9.99. + 05 ACCT-LASTN-O PIC X(20). + 05 ACCT-FIRSTN-O PIC X(15). + 05 ACCT-COMMENT-O PIC X(50). + + WORKING-STORAGE SECTION. + ***************************************************** + * SQL INCLUDE FOR SQLCA * + ***************************************************** + EXEC SQL INCLUDE SQLCA END-EXEC. + ***************************************************** + * SQL DECLARATION FOR VIEW ACCOUNTS * + ***************************************************** + EXEC SQL DECLARE Z#####T TABLE + (ACCTNO CHAR(8) NOT NULL, + LIMIT DECIMAL(9,2) , + BALANCE DECIMAL(9,2) , + SURNAME CHAR(20) NOT NULL, + FIRSTN CHAR(15) NOT NULL, + ADDRESS1 CHAR(25) NOT NULL, + ADDRESS2 CHAR(20) NOT NULL, + ADDRESS3 CHAR(15) NOT NULL, + RESERVED CHAR(7) NOT NULL, + COMMENTS CHAR(50) NOT NULL) + END-EXEC. + ***************************************************** + * SQL CURSORS * + ***************************************************** + EXEC SQL DECLARE CUR1 CURSOR FOR + SELECT * FROM Z#####T + END-EXEC. + ***************************************************** + * STRUCTURE FOR CUSTOMER RECORD * + ***************************************************** + 01 CUSTOMER-RECORD. + 02 ACCT-NO PIC X(8). + 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. + 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. + 02 ACCT-LASTN PIC X(20). + 02 ACCT-FIRSTN PIC X(15). + 02 ACCT-ADDR1 PIC X(25). + 02 ACCT-ADDR2 PIC X(20). + 02 ACCT-ADDR3 PIC X(15). + 02 ACCT-RSRVD PIC X(7). + 02 ACCT-COMMENT PIC X(50). + + PROCEDURE DIVISION. + *------------------ + + ***************************************************** + * MAIN PROGRAM ROUTINE * + ***************************************************** + PROG-START. + OPEN OUTPUT REPOUT. + PERFORM LIST-ALL. + PROG-END. + CLOSE REPOUT. + GOBACK. + ***************************************************** + * LIST ALL CLIENTS * + ***************************************************** + LIST-ALL. + EXEC SQL OPEN CUR1 END-EXEC. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + PERFORM PRINT-AND-GET1 + UNTIL SQLCODE IS NOT EQUAL TO ZERO. + EXEC SQL CLOSE CUR1 END-EXEC. + PRINT-AND-GET1. + PERFORM PRINT-A-LINE. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + PRINT-A-LINE. + MOVE ACCT-NO TO ACCT-NO-O. + MOVE ACCT-LIMIT TO ACCT-LIMIT-O. + MOVE ACCT-BALANCE TO ACCT-BALANCE-O. + MOVE ACCT-LASTN TO ACCT-LASTN-O. + MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. + MOVE ACCT-COMMENT TO ACCT-COMMENT-O. + WRITE REPREC AFTER ADVANCING 2 LINES. diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB22.cbl b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB22.cbl index 2a7f2701..bbe515c1 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB22.cbl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB22.cbl @@ -1,146 +1,150 @@ - IDENTIFICATION DIVISION. 00022700 - *----------------------- 00022800 - PROGRAM-ID. CBLDB22 00022900 - 00026000 - ENVIRONMENT DIVISION. 00027000 - *-------------------- 00028000 - CONFIGURATION SECTION. 00029000 - INPUT-OUTPUT SECTION. 00030000 - FILE-CONTROL. 00040000 - SELECT REPOUT ASSIGN TO UT-S-REPORT. 00060000 - SELECT RECIN ASSIGN TO DA-S-RECIN. 00062000 - 00070000 - DATA DIVISION. 00080000 - *------------- 00090000 - FILE SECTION. 00100000 - *------------- 00101000 - FD REPOUT 00110000 - RECORD CONTAINS 120 CHARACTERS 00120000 - LABEL RECORDS ARE OMITTED 00130000 - RECORDING MODE F 00131000 - DATA RECORD IS REPREC. 00140000 - * 00140100 - 01 REPREC. 00141000 - 05 ACCT-NO-O PIC X(8). 00141100 - 05 ACCT-LIMIT-O PIC $$,$$$,$$9.99. 00141200 - 05 ACCT-BALANCE-O PIC $$,$$$,$$9.99. 00141300 - 05 ACCT-LASTN-O PIC X(20). 00141400 - 05 ACCT-FIRSTN-O PIC X(15). 00141500 - 05 ACCT-COMMENT-O PIC X(50). 00141600 - *------------- 00141700 - FD RECIN 00142000 - RECORD CONTAINS 80 CHARACTERS 00143000 - BLOCK CONTAINS 0 RECORDS 00144000 - RECORDING MODE F 00144100 - LABEL RECORDS ARE OMITTED. 00145000 - * 00145100 - 01 INREC PIC X(80). 00146000 - 00150000 - WORKING-STORAGE SECTION. 00240000 - ***************************************************** 00241000 - * STRUCTURE FOR INPUT * 00242000 - ***************************************************** 00243000 - 01 IOAREA. 00244000 - 02 LNAME PIC X(25). 00245000 - 02 FILLER PIC X(55). 00246000 - 77 INPUT-SWITCH PIC X VALUE 'Y'. 00247000 - 88 NOMORE-INPUT VALUE 'N'. 00248000 - ***************************************************** 00250000 - * SQL INCLUDE FOR SQLCA * 00260000 - ***************************************************** 00270000 - EXEC SQL INCLUDE SQLCA END-EXEC. 00280000 - ***************************************************** 00290000 - * SQL DECLARATION FOR VIEW ACCOUNTS * 00300000 - ***************************************************** 00310000 - EXEC SQL DECLARE Z#####T TABLE 00320000 - (ACCTNO CHAR(8) NOT NULL, 00330000 - LIMIT DECIMAL(9,2) , 00340000 - BALANCE DECIMAL(9,2) , 00350000 - SURNAME CHAR(20) NOT NULL, 00360000 - FIRSTN CHAR(15) NOT NULL, 00370000 - ADDRESS1 CHAR(25) NOT NULL, 00380000 - ADDRESS2 CHAR(20) NOT NULL, 00390000 - ADDRESS3 CHAR(15) NOT NULL, 00400000 - RESERVED CHAR(7) NOT NULL, 00410000 - COMMENTS CHAR(50) NOT NULL) 00420000 - END-EXEC. 00430000 - ***************************************************** 00440000 - * SQL CURSORS * 00450000 - ***************************************************** 00460000 - EXEC SQL DECLARE CUR1 CURSOR FOR 00470000 - SELECT * FROM Z#####T 00480000 - END-EXEC. 00490000 - * 00490100 - EXEC SQL DECLARE CUR2 CURSOR FOR 00491000 - SELECT * 00492000 - FROM Z#####T 00493000 - WHERE SURNAME = :LNAME 00494000 - END-EXEC. 00495000 - ***************************************************** 00500000 - * STRUCTURE FOR CUSTOMER RECORD * 00510000 - ***************************************************** 00520000 - 01 CUSTOMER-RECORD. 00530000 - 02 ACCT-NO PIC X(8). 00540000 - 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. 00550000 - 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. 00560000 - 02 ACCT-LASTN PIC X(20). 00570000 - 02 ACCT-FIRSTN PIC X(15). 00580000 - 02 ACCT-ADDR1 PIC X(25). 00590000 - 02 ACCT-ADDR2 PIC X(20). 00600000 - 02 ACCT-ADDR3 PIC X(15). 00610000 - 02 ACCT-RSRVD PIC X(7). 00620000 - 02 ACCT-COMMENT PIC X(50). 00630000 - 00640000 - PROCEDURE DIVISION. 00650000 - *------------------ 00660000 - PROG-START. 00670000 - OPEN INPUT RECIN. 00671000 - OPEN OUTPUT REPOUT. 00672000 - READ RECIN RECORD INTO IOAREA 00680000 - AT END MOVE 'N' TO INPUT-SWITCH. 00690000 - PERFORM PROCESS-INPUT 00700000 - UNTIL NOMORE-INPUT. 00710000 - * 00711000 - PROG-END. 00720000 - CLOSE RECIN 00730000 - REPOUT. 00740000 - GOBACK. 00750002 - * 00751000 - PROCESS-INPUT. 00760000 - IF LNAME = '*' 00770000 - PERFORM GET-ALL 00780000 - ELSE 00790000 - PERFORM GET-SPECIFIC. 00800000 - READ RECIN RECORD INTO IOAREA 00810000 - AT END MOVE 'N' TO INPUT-SWITCH. 00820000 - * 00821000 - GET-ALL. 00830000 - EXEC SQL OPEN CUR1 END-EXEC. 00840000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 00850000 - PERFORM PRINT-ALL 00860000 - UNTIL SQLCODE IS NOT EQUAL TO ZERO. 00870000 - EXEC SQL CLOSE CUR1 END-EXEC. 00880000 - * 00880100 - PRINT-ALL. 00881000 - PERFORM PRINT-A-LINE. 00882000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 00883000 - * 00883100 - GET-SPECIFIC. 00884000 - EXEC SQL OPEN CUR2 END-EXEC. 00885000 - EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. 00886000 - PERFORM PRINT-SPECIFIC 00887000 - UNTIL SQLCODE IS NOT EQUAL TO ZERO. 00888000 - EXEC SQL CLOSE CUR2 END-EXEC. 00889000 - * 00889100 - PRINT-SPECIFIC. 00889200 - PERFORM PRINT-A-LINE. 00889300 - EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. 00889400 - * 00889500 - PRINT-A-LINE. 00890000 - MOVE ACCT-NO TO ACCT-NO-O. 00900000 - MOVE ACCT-LIMIT TO ACCT-LIMIT-O. 00910000 - MOVE ACCT-BALANCE TO ACCT-BALANCE-O. 00920000 - MOVE ACCT-LASTN TO ACCT-LASTN-O. 00930000 - MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. 00940000 - MOVE ACCT-COMMENT TO ACCT-COMMENT-O. 00950000 - WRITE REPREC AFTER ADVANCING 2 LINES. 00960000 + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- + IDENTIFICATION DIVISION. + *----------------------- + PROGRAM-ID. CBLDB22 + + ENVIRONMENT DIVISION. + *-------------------- + CONFIGURATION SECTION. + INPUT-OUTPUT SECTION. + FILE-CONTROL. + SELECT REPOUT ASSIGN TO UT-S-REPORT. + SELECT RECIN ASSIGN TO DA-S-RECIN. + + DATA DIVISION. + *------------- + FILE SECTION. + *------------- + FD REPOUT + RECORD CONTAINS 120 CHARACTERS + LABEL RECORDS ARE OMITTED + RECORDING MODE F + DATA RECORD IS REPREC. + * + 01 REPREC. + 05 ACCT-NO-O PIC X(8). + 05 ACCT-LIMIT-O PIC $$,$$$,$$9.99. + 05 ACCT-BALANCE-O PIC $$,$$$,$$9.99. + 05 ACCT-LASTN-O PIC X(20). + 05 ACCT-FIRSTN-O PIC X(15). + 05 ACCT-COMMENT-O PIC X(50). + *------------- + FD RECIN + RECORD CONTAINS 80 CHARACTERS + BLOCK CONTAINS 0 RECORDS + RECORDING MODE F + LABEL RECORDS ARE OMITTED. + * + 01 INREC PIC X(80). + + WORKING-STORAGE SECTION. + ***************************************************** + * STRUCTURE FOR INPUT * + ***************************************************** + 01 IOAREA. + 02 LNAME PIC X(25). + 02 FILLER PIC X(55). + 77 INPUT-SWITCH PIC X VALUE 'Y'. + 88 NOMORE-INPUT VALUE 'N'. + ***************************************************** + * SQL INCLUDE FOR SQLCA * + ***************************************************** + EXEC SQL INCLUDE SQLCA END-EXEC. + ***************************************************** + * SQL DECLARATION FOR VIEW ACCOUNTS * + ***************************************************** + EXEC SQL DECLARE Z#####T TABLE + (ACCTNO CHAR(8) NOT NULL, + LIMIT DECIMAL(9,2) , + BALANCE DECIMAL(9,2) , + SURNAME CHAR(20) NOT NULL, + FIRSTN CHAR(15) NOT NULL, + ADDRESS1 CHAR(25) NOT NULL, + ADDRESS2 CHAR(20) NOT NULL, + ADDRESS3 CHAR(15) NOT NULL, + RESERVED CHAR(7) NOT NULL, + COMMENTS CHAR(50) NOT NULL) + END-EXEC. + ***************************************************** + * SQL CURSORS * + ***************************************************** + EXEC SQL DECLARE CUR1 CURSOR FOR + SELECT * FROM Z#####T + END-EXEC. + * + EXEC SQL DECLARE CUR2 CURSOR FOR + SELECT * + FROM Z#####T + WHERE SURNAME = :LNAME + END-EXEC. + ***************************************************** + * STRUCTURE FOR CUSTOMER RECORD * + ***************************************************** + 01 CUSTOMER-RECORD. + 02 ACCT-NO PIC X(8). + 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. + 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. + 02 ACCT-LASTN PIC X(20). + 02 ACCT-FIRSTN PIC X(15). + 02 ACCT-ADDR1 PIC X(25). + 02 ACCT-ADDR2 PIC X(20). + 02 ACCT-ADDR3 PIC X(15). + 02 ACCT-RSRVD PIC X(7). + 02 ACCT-COMMENT PIC X(50). + + PROCEDURE DIVISION. + *------------------ + PROG-START. + OPEN INPUT RECIN. + OPEN OUTPUT REPOUT. + READ RECIN RECORD INTO IOAREA + AT END MOVE 'N' TO INPUT-SWITCH. + PERFORM PROCESS-INPUT + UNTIL NOMORE-INPUT. + * + PROG-END. + CLOSE RECIN + REPOUT. + GOBACK. + * + PROCESS-INPUT. + IF LNAME = '*' + PERFORM GET-ALL + ELSE + PERFORM GET-SPECIFIC. + READ RECIN RECORD INTO IOAREA + AT END MOVE 'N' TO INPUT-SWITCH. + * + GET-ALL. + EXEC SQL OPEN CUR1 END-EXEC. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + PERFORM PRINT-ALL + UNTIL SQLCODE IS NOT EQUAL TO ZERO. + EXEC SQL CLOSE CUR1 END-EXEC. + * + PRINT-ALL. + PERFORM PRINT-A-LINE. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + * + GET-SPECIFIC. + EXEC SQL OPEN CUR2 END-EXEC. + EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. + PERFORM PRINT-SPECIFIC + UNTIL SQLCODE IS NOT EQUAL TO ZERO. + EXEC SQL CLOSE CUR2 END-EXEC. + * + PRINT-SPECIFIC. + PERFORM PRINT-A-LINE. + EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. + * + PRINT-A-LINE. + MOVE ACCT-NO TO ACCT-NO-O. + MOVE ACCT-LIMIT TO ACCT-LIMIT-O. + MOVE ACCT-BALANCE TO ACCT-BALANCE-O. + MOVE ACCT-LASTN TO ACCT-LASTN-O. + MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. + MOVE ACCT-COMMENT TO ACCT-COMMENT-O. + WRITE REPREC AFTER ADVANCING 2 LINES. diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB23.cbl b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB23.cbl index 894fc9ba..aebe638e 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB23.cbl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/cbl/CBLDB23.cbl @@ -1,133 +1,137 @@ - IDENTIFICATION DIVISION. 00022700 - *----------------------- 00022800 - PROGRAM-ID. CBLDB23 00022900 - AUTHOR. Otto B. Relational 00023000 - 00026000 - ENVIRONMENT DIVISION. 00027000 - *-------------------- 00028000 - CONFIGURATION SECTION. 00029000 - INPUT-OUTPUT SECTION. 00030000 - FILE-CONTROL. 00040000 - SELECT REPOUT 00050000 - ASSIGN TO UT-S-REPORT. 00060000 - SELECT CARDIN 00061000 - ASSIGN TO DA-S-CARDIN. 00062000 - 00070000 - DATA DIVISION. 00080000 - *------------- 00090000 - FILE SECTION. 00100000 - FD REPOUT 00110000 - RECORD CONTAINS 120 CHARACTERS 00120000 - LABEL RECORDS ARE OMITTED 00130000 - RECORDING MODE F 00131000 - DATA RECORD IS REPREC. 00140000 - 01 REPREC. 00141000 - 05 ACCT-NO-O PIC X(8). 00141100 - 05 ACCT-LASTN-O PIC X(20). 00141400 - 05 ACCT-FIRSTN-O PIC X(15). 00141500 - 05 ACCT-ADDR3-O PIC X(15). 00141600 - FD CARDIN 00142000 - RECORD CONTAINS 80 CHARACTERS 00143000 - BLOCK CONTAINS 0 RECORDS 00144000 - RECORDING MODE F 00144100 - LABEL RECORDS ARE OMITTED. 00145000 - 01 CARDREC PIC X(80). 00146000 - 00150000 - WORKING-STORAGE SECTION. 00240000 - ***************************************************** 00241000 - * STRUCTURE FOR INPUT * 00242000 - ***************************************************** 00243000 - 01 IOAREA. 00244000 - 02 STATE PIC X(25). 00245000 - 02 FILLER PIC X(55). 00246000 - 77 INPUT-SWITCH PIC X VALUE 'Y'. 00247000 - 88 NOMORE-INPUT VALUE 'N'. 00248000 - ***************************************************** 00250000 - * SQL INCLUDE FOR SQLCA * 00260000 - ***************************************************** 00270000 - EXEC SQL INCLUDE SQLCA END-EXEC. 00280000 - ***************************************************** 00290000 - * SQL DECLARATION FOR VIEW ACCOUNTS * 00300000 - ***************************************************** 00310000 - EXEC SQL DECLARE Z#####T TABLE 00320000 - (ACCTNO CHAR(8) NOT NULL, 00330000 - LIMIT DECIMAL(9,2) , 00340000 - BALANCE DECIMAL(9,2) , 00350000 - SURNAME CHAR(20) NOT NULL, 00360000 - FIRSTN CHAR(15) NOT NULL, 00370000 - ADDRESS1 CHAR(25) NOT NULL, 00380000 - ADDRESS2 CHAR(20) NOT NULL, 00390000 - ADDRESS3 CHAR(15) NOT NULL, 00400000 - RESERVED CHAR(7) NOT NULL, 00410000 - COMMENTS CHAR(50) NOT NULL) 00420000 - END-EXEC. 00430000 - ***************************************************** 00440000 - * SQL CURSORS * 00450000 - ***************************************************** 00460000 - EXEC SQL DECLARE CUR1 CURSOR FOR 00470000 - SELECT * FROM Z#####T 00480000 - END-EXEC. 00490000 - EXEC SQL DECLARE CUR2 CURSOR FOR 00491000 - SELECT * 00492000 - FROM Z#####T 00493000 - WHERE ADDRESS3 = :STATE 00494001 - END-EXEC. 00495000 - ***************************************************** 00500000 - * STRUCTURE FOR CUSTOMER RECORD * 00510000 - ***************************************************** 00520000 - 01 CUSTOMER-RECORD. 00530000 - 02 ACCT-NO PIC X(8). 00540000 - 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. 00550000 - 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. 00560000 - 02 ACCT-LASTN PIC X(20). 00570000 - 02 ACCT-FIRSTN PIC X(15). 00580000 - 02 ACCT-ADDR1 PIC X(25). 00590000 - 02 ACCT-ADDR2 PIC X(20). 00600000 - 02 ACCT-ADDR3 PIC X(15). 00610000 - 02 ACCT-RSRVD PIC X(7). 00620000 - 02 ACCT-COMMENT PIC X(50). 00630000 - 00640000 - PROCEDURE DIVISION. 00650000 - *------------------ 00660000 - PROG-START. 00670000 - OPEN INPUT CARDIN. 00671000 - OPEN OUTPUT REPOUT. 00672000 - READ CARDIN RECORD INTO IOAREA 00680000 - AT END MOVE 'N' TO INPUT-SWITCH. 00690000 - PERFORM PROCESS-INPUT 00700000 - UNTIL NOMORE-INPUT. 00710000 - PROG-END. 00720000 - CLOSE CARDIN 00730000 - REPOUT. 00740000 - GOBACK. 00750003 - PROCESS-INPUT. 00760000 - IF STATE = '*' 00770000 - PERFORM GET-ALL 00780000 - ELSE 00790000 - PERFORM GET-SPECIFIC. 00800000 - READ CARDIN RECORD INTO IOAREA 00810000 - AT END MOVE 'N' TO INPUT-SWITCH. 00820000 - GET-ALL. 00830000 - EXEC SQL OPEN CUR1 END-EXEC. 00840000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 00850000 - PERFORM PRINT-ALL 00860000 - UNTIL SQLCODE IS NOT EQUAL TO ZERO. 00870000 - EXEC SQL CLOSE CUR1 END-EXEC. 00880000 - PRINT-ALL. 00881000 - PERFORM PRINT-A-LINE. 00882000 - EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. 00883000 - GET-SPECIFIC. 00884000 - EXEC SQL OPEN CUR2 END-EXEC. 00885000 - EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. 00886000 - PERFORM PRINT-SPECIFIC 00887000 - UNTIL SQLCODE IS NOT EQUAL TO ZERO. 00888000 - EXEC SQL CLOSE CUR2 END-EXEC. 00889000 - PRINT-SPECIFIC. 00889100 - PERFORM PRINT-A-LINE. 00889200 - EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. 00889300 - PRINT-A-LINE. 00890000 - MOVE ACCT-NO TO ACCT-NO-O. 00900000 - MOVE ACCT-LASTN TO ACCT-LASTN-O. 00930000 - MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. 00940000 - MOVE ACCT-ADDR3 TO ACCT-ADDR3-O. 00941000 - WRITE REPREC AFTER ADVANCING 2 LINES. 00960000 + *----------------------- + * Copyright Contributors to the COBOL Programming Course + * SPDX-License-Identifier: CC-BY-4.0 + *----------------------- + IDENTIFICATION DIVISION. + *----------------------- + PROGRAM-ID. CBLDB23 + AUTHOR. Otto B. Relational + + ENVIRONMENT DIVISION. + *-------------------- + CONFIGURATION SECTION. + INPUT-OUTPUT SECTION. + FILE-CONTROL. + SELECT REPOUT + ASSIGN TO UT-S-REPORT. + SELECT CARDIN + ASSIGN TO DA-S-CARDIN. + + DATA DIVISION. + *------------- + FILE SECTION. + FD REPOUT + RECORD CONTAINS 120 CHARACTERS + LABEL RECORDS ARE OMITTED + RECORDING MODE F + DATA RECORD IS REPREC. + 01 REPREC. + 05 ACCT-NO-O PIC X(8). + 05 ACCT-LASTN-O PIC X(20). + 05 ACCT-FIRSTN-O PIC X(15). + 05 ACCT-ADDR3-O PIC X(15). + FD CARDIN + RECORD CONTAINS 80 CHARACTERS + BLOCK CONTAINS 0 RECORDS + RECORDING MODE F + LABEL RECORDS ARE OMITTED. + 01 CARDREC PIC X(80). + + WORKING-STORAGE SECTION. + ***************************************************** + * STRUCTURE FOR INPUT * + ***************************************************** + 01 IOAREA. + 02 STATE PIC X(25). + 02 FILLER PIC X(55). + 77 INPUT-SWITCH PIC X VALUE 'Y'. + 88 NOMORE-INPUT VALUE 'N'. + ***************************************************** + * SQL INCLUDE FOR SQLCA * + ***************************************************** + EXEC SQL INCLUDE SQLCA END-EXEC. + ***************************************************** + * SQL DECLARATION FOR VIEW ACCOUNTS * + ***************************************************** + EXEC SQL DECLARE Z#####T TABLE + (ACCTNO CHAR(8) NOT NULL, + LIMIT DECIMAL(9,2) , + BALANCE DECIMAL(9,2) , + SURNAME CHAR(20) NOT NULL, + FIRSTN CHAR(15) NOT NULL, + ADDRESS1 CHAR(25) NOT NULL, + ADDRESS2 CHAR(20) NOT NULL, + ADDRESS3 CHAR(15) NOT NULL, + RESERVED CHAR(7) NOT NULL, + COMMENTS CHAR(50) NOT NULL) + END-EXEC. + ***************************************************** + * SQL CURSORS * + ***************************************************** + EXEC SQL DECLARE CUR1 CURSOR FOR + SELECT * FROM Z#####T + END-EXEC. + EXEC SQL DECLARE CUR2 CURSOR FOR + SELECT * + FROM Z#####T + WHERE ADDRESS3 = :STATE + END-EXEC. + ***************************************************** + * STRUCTURE FOR CUSTOMER RECORD * + ***************************************************** + 01 CUSTOMER-RECORD. + 02 ACCT-NO PIC X(8). + 02 ACCT-LIMIT PIC S9(7)V99 COMP-3. + 02 ACCT-BALANCE PIC S9(7)V99 COMP-3. + 02 ACCT-LASTN PIC X(20). + 02 ACCT-FIRSTN PIC X(15). + 02 ACCT-ADDR1 PIC X(25). + 02 ACCT-ADDR2 PIC X(20). + 02 ACCT-ADDR3 PIC X(15). + 02 ACCT-RSRVD PIC X(7). + 02 ACCT-COMMENT PIC X(50). + + PROCEDURE DIVISION. + *------------------ + PROG-START. + OPEN INPUT CARDIN. + OPEN OUTPUT REPOUT. + READ CARDIN RECORD INTO IOAREA + AT END MOVE 'N' TO INPUT-SWITCH. + PERFORM PROCESS-INPUT + UNTIL NOMORE-INPUT. + PROG-END. + CLOSE CARDIN + REPOUT. + GOBACK. + PROCESS-INPUT. + IF STATE = '*' + PERFORM GET-ALL + ELSE + PERFORM GET-SPECIFIC. + READ CARDIN RECORD INTO IOAREA + AT END MOVE 'N' TO INPUT-SWITCH. + GET-ALL. + EXEC SQL OPEN CUR1 END-EXEC. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + PERFORM PRINT-ALL + UNTIL SQLCODE IS NOT EQUAL TO ZERO. + EXEC SQL CLOSE CUR1 END-EXEC. + PRINT-ALL. + PERFORM PRINT-A-LINE. + EXEC SQL FETCH CUR1 INTO :CUSTOMER-RECORD END-EXEC. + GET-SPECIFIC. + EXEC SQL OPEN CUR2 END-EXEC. + EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. + PERFORM PRINT-SPECIFIC + UNTIL SQLCODE IS NOT EQUAL TO ZERO. + EXEC SQL CLOSE CUR2 END-EXEC. + PRINT-SPECIFIC. + PERFORM PRINT-A-LINE. + EXEC SQL FETCH CUR2 INTO :CUSTOMER-RECORD END-EXEC. + PRINT-A-LINE. + MOVE ACCT-NO TO ACCT-NO-O. + MOVE ACCT-LASTN TO ACCT-LASTN-O. + MOVE ACCT-FIRSTN TO ACCT-FIRSTN-O. + MOVE ACCT-ADDR3 TO ACCT-ADDR3-O. + WRITE REPREC AFTER ADVANCING 2 LINES. diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21C.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21C.jcl index cccc0ce1..e35a0f5a 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21C.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21C.jcl @@ -1,4 +1,8 @@ //CBLDB21C JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COMPILE EXEC DB2CBL,MBR=CBLDB21 //BIND.SYSTSIN DD *,SYMBOLS=CNVTSYS DSN SYSTEM(DBCG) diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21R.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21R.jcl index 9de8414d..7f74ff9f 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21R.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB21R.jcl @@ -1,7 +1,10 @@ //CBLDB21R JOB 1,NOTIFY=&SYSUID,REGION=0M -//******************************************************************** -//* RUN * -//******************************************************************** +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//* RUN +//***************************************************/ //RUN EXEC PGM=IKJEFT01 //STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR //REPORT DD SYSOUT=* diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22C.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22C.jcl index ef822b69..6c7123ab 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22C.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22C.jcl @@ -1,4 +1,8 @@ //CBLDB22C JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COMPILE EXEC DB2CBL,MBR=CBLDB22 //BIND.SYSTSIN DD *,SYMBOLS=CNVTSYS DSN SYSTEM(DBCG) diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22R.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22R.jcl index dfc38216..f0fe8bc0 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22R.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB22R.jcl @@ -1,7 +1,10 @@ //CBLDB22R JOB 1,NOTIFY=&SYSUID,REGION=0M -//******************************************************************** -//* RUN * -//******************************************************************** +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//* RUN +//***************************************************/ //RUN EXEC PGM=IKJEFT01 //STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR //RECIN DD * diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23C.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23C.jcl index 649350f6..8b2fe8b9 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23C.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23C.jcl @@ -1,4 +1,8 @@ //CBLDB23C JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //COMPILE EXEC DB2CBL,MBR=CBLDB23 //BIND.SYSTSIN DD *,SYMBOLS=CNVTSYS DSN SYSTEM(DBCG) diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23R.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23R.jcl index 73f5df53..f97676fd 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23R.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CBLDB23R.jcl @@ -1,7 +1,10 @@ //CBLDB23R JOB 1,NOTIFY=&SYSUID,REGION=0M -//******************************************************************** -//* RUN * -//******************************************************************** +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//* RUN +//***************************************************/ //RUN EXEC PGM=IKJEFT01 //STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR //REPORT DD SYSOUT=* diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CRETBL.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CRETBL.jcl index 8318e8d4..96d938ec 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CRETBL.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/CRETBL.jcl @@ -1,32 +1,36 @@ -//CREATE1 JOB 1 JOB03105 -//SQLEXEC EXEC DB2JCL 00000202 -//SQL.SYSIN DD *,SYMBOLS=CNVTSYS 00000302 ---** SQL FOLLOWS **************************************** 00000402 +//CREATE1 JOB 1 +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//SQLEXEC EXEC DB2JCL +//SQL.SYSIN DD *,SYMBOLS=CNVTSYS +--** SQL FOLLOWS **************************************** --DROP TABLESPACE DB2.&SYSUID.S; ---COMMIT; 00050000 - CREATE TABLESPACE &SYSUID.S IN DB2 00000500 - USING STOGROUP DB2DISK PRIQTY 20 SECQTY 20 ERASE NO 00000600 - LOCKSIZE PAGE LOCKMAX SYSTEM 00000700 - BUFFERPOOL BP0 CLOSE NO COMPRESS YES; 00000800 - COMMIT; 00000900 - CREATE TABLE &SYSUID.T 00001100 - (ACCTNO CHAR(8) NOT NULL, 00002000 - LIMIT DECIMAL(9,2) , 00003000 - BALANCE DECIMAL(9,2) , 00004000 - SURNAME CHAR(20) NOT NULL, 00005000 - FIRSTN CHAR(15) NOT NULL, 00006000 - ADDRESS1 CHAR(25) , 00007000 - ADDRESS2 CHAR(20) , 00008000 - ADDRESS3 CHAR(15) , 00009000 - RESERVED CHAR(7) , 00010000 - COMMENTS CHAR(50) , 00020000 - PRIMARY KEY(ACCTNO)) 00030000 - IN DB2.&SYSUID.S; 00040000 - COMMIT; 00050000 ---******************************************************* 00060000 - CREATE UNIQUE INDEX &SYSUID.I 00070000 - ON &SYSUID.T (ACCTNO ASC) 00080000 - USING STOGROUP DB2DISK PRIQTY 12 ERASE NO 00080100 - BUFFERPOOL BP0 CLOSE NO; 00080200 ---******************************************************* 00080300 - COMMIT; 00080400 +--COMMIT; + CREATE TABLESPACE &SYSUID.S IN DB2 + USING STOGROUP DB2DISK PRIQTY 20 SECQTY 20 ERASE NO + LOCKSIZE PAGE LOCKMAX SYSTEM + BUFFERPOOL BP0 CLOSE NO COMPRESS YES; + COMMIT; + CREATE TABLE &SYSUID.T + (ACCTNO CHAR(8) NOT NULL, + LIMIT DECIMAL(9,2) , + BALANCE DECIMAL(9,2) , + SURNAME CHAR(20) NOT NULL, + FIRSTN CHAR(15) NOT NULL, + ADDRESS1 CHAR(25) , + ADDRESS2 CHAR(20) , + ADDRESS3 CHAR(15) , + RESERVED CHAR(7) , + COMMENTS CHAR(50) , + PRIMARY KEY(ACCTNO)) + IN DB2.&SYSUID.S; + COMMIT; +--******************************************************* + CREATE UNIQUE INDEX &SYSUID.I + ON &SYSUID.T (ACCTNO ASC) + USING STOGROUP DB2DISK PRIQTY 12 ERASE NO + BUFFERPOOL BP0 CLOSE NO; +--******************************************************* + COMMIT; diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DB2SETUP.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DB2SETUP.jcl index 958f99e2..5cc452cf 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DB2SETUP.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DB2SETUP.jcl @@ -1,4 +1,8 @@ //DB2SETUP JOB 1 +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //JOBSTEP EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=A //JCL DD DSNAME=&SYSUID..JCL,DISP=SHR diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DBRMLIB.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DBRMLIB.jcl index d0c4fa70..2d2902f2 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DBRMLIB.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/DBRMLIB.jcl @@ -1,4 +1,8 @@ //DBRMLIB JOB 1 +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //*** Needed to compile COBOL with EXEC SQL statments ***// //ALLOC EXEC PGM=IEFBR14 //DBRM DD DSN=&SYSUID..DBRMLIB,DISP=(,CATLG), diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/LOADTBL.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/LOADTBL.jcl index 9ce29a8f..e429494c 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/LOADTBL.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/LOADTBL.jcl @@ -1,4 +1,8 @@ //LOADTBL JOB 1,NOTIFY=&SYSUID +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ //LOAD EXEC DSNUPROC,PARM='DBCG,Z99' //TBLRECS DD DSN=ZOS.PUBLIC.SEQ.DATA,DISP=SHR //SYSIN DD *,SYMBOLS=CNVTSYS diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/SELTBL.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/SELTBL.jcl index a3b47523..e51ae929 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/SELTBL.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jcl/SELTBL.jcl @@ -1,5 +1,9 @@ -//SELTBL JOB 1 00010003 -//SQLEXEC EXEC DB2JCL 00020002 -//SYSIN DD *,SYMBOLS=CNVTSYS 00021003 ---******* SQL FOLLOWS 00030003 - SELECT * FROM &SYSUID.T; 00040003 +//SELTBL JOB 1 +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//SQLEXEC EXEC DB2JCL +//SYSIN DD *,SYMBOLS=CNVTSYS +--******* SQL FOLLOWS + SELECT * FROM &SYSUID.T; From 1a751664c945f90ab31cb15b2fc9583ab33c2ac3 Mon Sep 17 00:00:00 2001 From: Hartanto Ario Widjaya Date: Tue, 8 Feb 2022 21:50:20 +0800 Subject: [PATCH 2/3] Add SPDX ID for Db2 JCL Procedure Signed-off-by: Hartanto Ario Widjaya --- .../Labs/README.md | 6 +- .../Labs/README.md | 7 +- .../Labs/jclproc/DB2CBL.jcl | 117 +++++++++--------- .../Labs/jclproc/DB2JCL.jcl | 28 +++-- 4 files changed, 83 insertions(+), 75 deletions(-) diff --git a/COBOL Programming Course #1 - Getting Started/Labs/README.md b/COBOL Programming Course #1 - Getting Started/Labs/README.md index c42489d8..89750c15 100644 --- a/COBOL Programming Course #1 - Getting Started/Labs/README.md +++ b/COBOL Programming Course #1 - Getting Started/Labs/README.md @@ -1,6 +1,6 @@ # COBOL Programming Course #1 - Getting Started - Lab Setup -The labs for this course are set up on z/OS 2.4 with Enterprise COBOL v6.3. Modification may be necessary if your installation uses a different version. +The labs for this course are set up on z/OS 2.4 with Enterprise COBOL v6.3. Modification may be necessary for your installation. Please note that the following instruction is provided as-is. Neither this project nor the Open Mainframe Project will be held responsible or liable for any loss, costs, liabilities, or damages resulting from your direct or indirect use of this Lab Setup. @@ -16,7 +16,7 @@ There are 2 kinds of data provided inside the **data** folder: - **data** is a binary file that is still encoded in EBCDIC with packed decimal - **xdata** is a viewable ASCII file, however, the packed decimal fields are unreadable -There are 3 supplied cataloged procedures inside the **jclproc** folder: +There are 3 IBM-supplied cataloged procedures inside the **jclproc** folder: - **IGYWC** for COBOL code compilation - **IGYWCL** for COBOL code compilation and link-edit - **IGYWCLG** for COBOL code compilation, link-edit, and execution @@ -29,7 +29,7 @@ To set up your environment for the Course, - You will need to copy the members from **cbl** to your own PDS. The Course Document and JCL assume that the PDS is `&SYSUID..CBL`. - You will need to copy the members from **jcl** to your own PDS. The Course Document assumes that the PDS is `&SYSUID..JCL`. - You will need to transfer the binary **data** from the data folder to your own sequential data set. The Course Document and JCL assume that the PDS is `&SYSUID..DATA`. -- You will need to make sure that the procedures IGYWC, IGYWCL, and IGYWCLG are available in your procedure library. +- You will need to make sure that the IBM-supplied procedures IGYWC, IGYWCL, and IGYWCLG are available in your procedure library. A copy of these procedures are available at **jclproc**. Note that the JCL references the following data sets, - `&SYSUID..CBL` where the COBOL source codes are stored diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/README.md b/COBOL Programming Course #2 - Advanced Topics/Labs/README.md index e3ff7379..16432b51 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/README.md +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/README.md @@ -1,6 +1,6 @@ # COBOL Programming Course #2 - Advanced Topics - Lab Setup -The labs for this course are set up on z/OS 2.4 with Enterprise COBOL v6.3 and Db2 for z/OS 12. Modification may be necessary if your installation uses a different version. +The labs for this course are set up on z/OS 2.4 with Enterprise COBOL v6.3 and Db2 for z/OS 12. Modification may be necessary for your installation. Please note that the following instruction is provided as-is. Neither this project nor the Open Mainframe Project will be held responsible or liable for any loss, costs, liabilities, or damages resulting from your direct or indirect use of this Lab Setup. @@ -14,7 +14,7 @@ There are 3 folders within this directory: There are 3 supplied cataloged procedures inside the **jclproc** folder: - **DB2CBL** for COBOL code compilation, link-edit, and Db2 binding - **DB2JCL** for the execution of SQL statements via JCL -- **DSNUPROC** for invoking Db2 online utility +- **DSNUPROC** for invoking Db2 online utility, this procedure is IBM-supplied ## Setup @@ -24,7 +24,8 @@ To set up your own environment for the Course, - You will need to make sure that the Lab Setup for Course 1 has been followed. - You will need to copy the members from **cbl** to your own PDS. The Course Document and JCL assume that the PDS is `&SYSUID..CBL`. - You will need to copy the members from **jcl** to your own PDS. The Course Document assumes that the PDS is `&SYSUID..JCL`. -- You will need to make sure that the procedures DB2CBL, DB2JCL, and DSNUPROC are available in your procedure library. +- You will need to make sure that the procedures DB2CBL and DB2JCL are added from **jclproc** to your procedure library. +- You will need to make sure that the IBM-supplied procedure DSNUPROC is an IBM-supplied procedure. A copy is available on **jclproc**. Note that the JCL references the following data sets, - `&SYSUID..CBL` where the COBOL source codes are stored diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2CBL.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2CBL.jcl index 818757d0..018ea107 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2CBL.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2CBL.jcl @@ -1,57 +1,60 @@ -//DB2CBL PROC MBR='DB2CBL' 00010000 -//******************************************************************** 00200000 -//* COMPILE - COBOL PLUS EXPANDED EXEC SQL CODE * 00210000 -//******************************************************************** 00220000 -// IF RC = 0 THEN 00230000 -//COBOL EXEC PGM=IGYCRCTL,REGION=0M,PARM='SQL' 00240002 -//STEPLIB DD DSN=IGY630.SIGYCOMP,DISP=SHR 00250001 -// DD DSN=DSNC10.DBCG.SDSNEXIT,DISP=SHR 00251000 -// DD DSN=DSNC10.SDSNLOAD,DISP=SHR 00252000 -// DD DSN=CEE.SCEERUN,DISP=SHR 00260000 -// DD DSN=CEE.SCEERUN2,DISP=SHR 00270000 -//SYSIN DD DISP=SHR,DSN=&SYSUID..CBL(&MBR) 00271003 -//DBRMLIB DD DISP=SHR,DSN=&SYSUID..DBRMLIB(&MBR) 00272000 -//SYSPRINT DD SYSOUT=* 00290000 -//SYSLIN DD DSN=&&LOADSET,UNIT=SYSALLDA, 00300000 -// DISP=(MOD,PASS),SPACE=(CYL,(1,1)) 00310000 -//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00320000 -//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00330000 -//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00340000 -//SYSUT4 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00350000 -//SYSUT5 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00360000 -//SYSUT6 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00370000 -//SYSUT7 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00380000 -//SYSUT8 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00390000 -//SYSUT9 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00400000 -//SYSUT10 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00410000 -//SYSUT11 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00420000 -//SYSUT12 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00430000 -//SYSUT13 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00440000 -//SYSUT14 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00450000 -//SYSUT15 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00460000 -//SYSMDECK DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00470000 -// ENDIF 00480000 -//******************************************************************** 00490000 -//* CREATE EXECUTABLE MODULE * 00500000 -//******************************************************************** 00510000 -// IF RC <= 4 THEN 00520004 -//LKED EXEC PGM=IEWBLINK,COND=(8,LT,COBOL),REGION=0M 00530000 -//SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR 00540000 -// DD DSN=DSNC10.SDSNLOAD,DISP=SHR 00550000 -//SYSPRINT DD SYSOUT=* 00560000 -//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) 00570000 -//SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) 00580000 -//SYSLMOD DD DSN=&SYSUID..LOAD(&MBR),DISP=SHR 00590000 -// ENDIF 00600000 -//******************************************************************** 00610000 -//* BIND DB2 PLAN * 00620000 -//******************************************************************** 00630000 -// IF RC <= 4 THEN 00640000 -//BIND EXEC PGM=IKJEFT01 00650000 -//STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR 00660000 -//DBRMLIB DD DSN=&SYSUID..DBRMLIB,DISP=SHR 00670000 -//SYSUDUMP DD DUMMY 00680000 -//SYSTSPRT DD SYSOUT=* 00690000 -//SYSPRINT DD SYSOUT=* 00700000 -//SYSTSIN DD DUMMY 00710007 -// ENDIF 00760000 +//DB2CBL PROC MBR='DB2CBL' +//******************************************************************** +//* Copyright Contributors to the COBOL Programming Course * +//* SPDX-License-Identifier: CC-BY-4.0 * +//******************************************************************** +//* COMPILE - COBOL PLUS EXPANDED EXEC SQL CODE * +//******************************************************************** +// IF RC = 0 THEN +//COBOL EXEC PGM=IGYCRCTL,REGION=0M,PARM='SQL' +//STEPLIB DD DSN=IGY630.SIGYCOMP,DISP=SHR +// DD DSN=DSNC10.DBCG.SDSNEXIT,DISP=SHR +// DD DSN=DSNC10.SDSNLOAD,DISP=SHR +// DD DSN=CEE.SCEERUN,DISP=SHR +// DD DSN=CEE.SCEERUN2,DISP=SHR +//SYSIN DD DISP=SHR,DSN=&SYSUID..CBL(&MBR) +//DBRMLIB DD DISP=SHR,DSN=&SYSUID..DBRMLIB(&MBR) +//SYSPRINT DD SYSOUT=* +//SYSLIN DD DSN=&&LOADSET,UNIT=SYSALLDA, +// DISP=(MOD,PASS),SPACE=(CYL,(1,1)) +//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT2 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT3 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT4 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT5 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT6 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT7 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT8 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT9 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT10 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT11 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT12 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT13 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT14 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSUT15 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSMDECK DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +// ENDIF +//******************************************************************** +//* CREATE EXECUTABLE MODULE * +//******************************************************************** +// IF RC <= 4 THEN +//LKED EXEC PGM=IEWBLINK,COND=(8,LT,COBOL),REGION=0M +//SYSLIB DD DSN=CEE.SCEELKED,DISP=SHR +// DD DSN=DSNC10.SDSNLOAD,DISP=SHR +//SYSPRINT DD SYSOUT=* +//SYSUT1 DD UNIT=SYSALLDA,SPACE=(CYL,(1,1)) +//SYSLIN DD DSN=&&LOADSET,DISP=(OLD,DELETE) +//SYSLMOD DD DSN=&SYSUID..LOAD(&MBR),DISP=SHR +// ENDIF +//******************************************************************** +//* BIND DB2 PLAN * +//******************************************************************** +// IF RC <= 4 THEN +//BIND EXEC PGM=IKJEFT01 +//STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR +//DBRMLIB DD DSN=&SYSUID..DBRMLIB,DISP=SHR +//SYSUDUMP DD DUMMY +//SYSTSPRT DD SYSOUT=* +//SYSPRINT DD SYSOUT=* +//SYSTSIN DD DUMMY +// ENDIF diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2JCL.jcl b/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2JCL.jcl index 1f7521e6..567db00e 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2JCL.jcl +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/jclproc/DB2JCL.jcl @@ -1,12 +1,16 @@ -//DB2JCL PROC 00010001 -//SQL EXEC PGM=IKJEFT01 00030001 -//STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR 00031002 -//SYSTSPRT DD SYSOUT=* 00040000 -//SYSTSIN DD * 00050000 - DSN SYSTEM(DBCG) 00060004 - RUN PROGRAM(DSNTEP2) PLAN(DSNTEP12) + 00070000 - LIB('DSNC10.DBCG.RUNLIB.LOAD') PARMS('/ALIGN(MID)') 00090006 - END 00100000 -//SYSPRINT DD SYSOUT=* 00110000 -//SYSUDUMP DD DUMMY 00120000 -// PEND 00150001 +//DB2JCL PROC +//***************************************************/ +//* Copyright Contributors to the COBOL Programming Course +//* SPDX-License-Identifier: CC-BY-4.0 +//***************************************************/ +//SQL EXEC PGM=IKJEFT01 +//STEPLIB DD DSN=DSNC10.SDSNLOAD,DISP=SHR +//SYSTSPRT DD SYSOUT=* +//SYSTSIN DD * + DSN SYSTEM(DBCG) + RUN PROGRAM(DSNTEP2) PLAN(DSNTEP12) + + LIB('DSNC10.DBCG.RUNLIB.LOAD') PARMS('/ALIGN(MID)') + END +//SYSPRINT DD SYSOUT=* +//SYSUDUMP DD DUMMY +// PEND From 422091ef199e265ca889540a35aa78d10edf7492 Mon Sep 17 00:00:00 2001 From: Hartanto Ario Widjaya Date: Mon, 14 Feb 2022 21:23:28 +0800 Subject: [PATCH 3/3] Edit lab setup and contributing policy Signed-off-by: Hartanto Ario Widjaya --- .../Labs/README.md | 2 +- CONTRIBUTING.md | 14 +++++++++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/COBOL Programming Course #2 - Advanced Topics/Labs/README.md b/COBOL Programming Course #2 - Advanced Topics/Labs/README.md index 16432b51..cb24e8ff 100644 --- a/COBOL Programming Course #2 - Advanced Topics/Labs/README.md +++ b/COBOL Programming Course #2 - Advanced Topics/Labs/README.md @@ -25,7 +25,7 @@ To set up your own environment for the Course, - You will need to copy the members from **cbl** to your own PDS. The Course Document and JCL assume that the PDS is `&SYSUID..CBL`. - You will need to copy the members from **jcl** to your own PDS. The Course Document assumes that the PDS is `&SYSUID..JCL`. - You will need to make sure that the procedures DB2CBL and DB2JCL are added from **jclproc** to your procedure library. -- You will need to make sure that the IBM-supplied procedure DSNUPROC is an IBM-supplied procedure. A copy is available on **jclproc**. +- You will need to make sure that the IBM-supplied procedure DSNUPROC is available in your procedure library. A copy is available on **jclproc**. Note that the JCL references the following data sets, - `&SYSUID..CBL` where the COBOL source codes are stored diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cea0a00d..5d6c54fa 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,7 +9,7 @@ The primary intent of the COBOL Programming Course is to offer free and accessib For major changes, please open an issue first to discuss what you would like to change. All contributions should be made with the primary intent of the course in mind. ## Sign all of your git commits! -All contributions must align with the [Open Mainframe Project contribution guidelines](https://github.com/openmainframeproject/tac/blob/master/process/contribution_guidelines.md), including having a DCO signoff on all commits. +All contributions must align with the [Open Mainframe Project contribution guidelines](https://github.com/openmainframeproject/tac/blob/master/process/contribution_guidelines.md), including having a [DCO signoff](https://developercertificate.org/) on all commits. Whenever you make a commit, it is required to be signed. If you do not, you will have to re-write the git history to get all commits signed before they can be merged, which can be quite a pain. @@ -40,3 +40,15 @@ If you are committing via the GitHub UI directly, check out these [useful tools] ## Pull Requests - All contributions must be reviewed by a [committer](COMMITTERS.csv) - Anyone can comment on a pull request to request delay on merging or to get questions answered. + +## License and Copyright +All documentation and lab codes for the COBOL Programming Course will be made available under the [Creative Commons Attribution 4.0 International License](LICENSE). + +All lab codes need to include a header to clearly show this information in [SPDX short-form identifier](https://spdx.dev/ids/) along with a general copyright statement as shown below: + +``` +/* Copyright Contributors to the COBOL Programming Course +/* SPDX-License-Identifier: CC-BY-4.0 +``` + +For binary or configuration files that do not support comments, the license may be omitted. If comments are supported, the license header should be included. \ No newline at end of file