Assignment 8

JCL Procedures and IEBGENER

(50 points)

This assignment is in several parts.


Part 1.

Write two instream JCL procedures, one to compile a COBOL source program and the other to create and execute a load module using the loader. The JCL for these procedures is the same as you have used before with the following changes:

For the COBOL compiler:

  1. Specify a symbolic parameter for the PARM option and specify TEST and APOST as the default.

  2. Specify a symbolic parameter for the REGION option and specify 248K as the default.

  3. Omit the SYSIN DD statement.

  4. Specify a symbolic parameter for the SYSLIN data set name and assign &&OBJSET as the default.

  5. Specify a symbolic parameter for the SYSLIN data set disposition and assign (NEW,PASS,DELETE) as the default.

For the loader:

  1. Specify a symbolic parameter for the loader PARM option and leave it null as a default setting.

  2. Specify a symbolic parameter for the program/runtime PARM option and assign TERMTHDACT(DUMP) as the default.

  3. Specify a symbolic parameter for the COND option. Assign a null value as the default.

  4. Specify a symbolic parameter for the REGION option and assign 2048K as the default.

  5. Specify a symbolic parameter for the SYSLIN data set name and assign &&OBJSET as the default.

  6. Specify a symbolic parameter for the SYSLIN data set disposition and assign
  7. Include a CEEDUMP DD statement and a SYSUDUMP DD statement.


Part 2

Use the TYPRUN=SCAN parameter on a JOB statement to locate any syntax errors in your instream procedure.


Part 3

Use your instream procedures to compile and execute your assignment 3, part B source code. Include your source code as instream data.

Make the following changes to your procedures:

  1. Override the compiler PARM so that it includes LIB and FLAG(E,E) as well as TEST and APOST.

  2. Change the name of the SYSLIN data set to &&OBJMOD in both places where this name occurs.

  3. Change the REGION for the compiler to be 2048K.

  4. Add a SYSIN DD card for your instream source code.

  5. Change the loader COND so that the loader will not execute if the return code from the compiler is greater than 4.

  6. Increase the loader's REGION to 3000K.

  7. Assign MAP as the loader PARM.

  8. Nullify the SYSUDUMP card.

  9. Assign TERMTHDACT(DUMP) as the run-time PARM.

  10. Add the cards that are required for your program to do input and output.


Part 4

After Part III runs correctly, use IEBGENER to put both procedures in a permanent procedure library under your own MVS logon ID. Use IEBGENER to put your source code into a permanent sequential data set under your own MVS logon ID. Remember to code the correct DCB information for these data sets. Catalog the PDS and the file.


Part 5

Use TYPRUN=SCAN to get a listing of the two procedures in your procedure library.


Part 6.

Repeat Part III using the procedures that are in your procedure library. All of the changes listed in Part III still apply to this run except now your source code is not instream, but is a permanent sequential data set.

Add NOSOURCE to the compiler options. On your final grade run, delete the procedure library and your sequential data set that contains your source code.


Processing Notes