How can parts of an analysis output be executed?

Document ID : KB000023793
Last Modified Date : 14/02/2018
Show Technical Document Details

Question:

An Analysis output has been generated and executed previously. Part of the analysis output must be re-executed. The load of one table and the image copy of the tablespace must be redone. Can this be done without cutting these blocks of statements out and executing them elsewhere?

Answer:

This can be done using the .SYSTEM card inserted into the analysis output. In a normal RC/Migrator Analysis Output there already exist some .SYSTEM cards. The code between one .SYSTEM card and the next .SYSTEM card can be executed as a block. These cards can be inserted anywhere in a logical place in the code manually with an ISPF edit. The .SYSTEM card must have a Label.

In this case we will use .SYSTEM RELOAD S and .SYSTEM RELOAD E. "S" for start and "E" for end. This is inserted before and after the particular load utility we want to re-execute. We want to also redo the image copy. Insert .SYSTEM ICOPYS and .SYSTEM ICOPYE before and after the Image copy code.

Example code:

Start of an Analysis Output
.
.
.SYSTEM UNLOADS
.
.
.SYSTEM SQLDDL
.
.
Utility Loads
.
.SYSTEM RELOADS              <<<Inserted
Your load utility code to rerun.
.SYSTEM RELOADE              <<<Inserted
.
.
Image copies
.SYSTEM ICOPYS               <<<Inserted
Your image copy code to rerun.
.SYSTEM ICOPYE               <<<Inserted

Save the code and using the Batch Processor Interface generate the JCL to execute the Analysis. Specify RESTART "RELOADS" and preview the JCL.

There will be a .RESTART SYSTEM(RELOADS) card second from the bottom.

Change that to .RESTART SYSTEM(RELOADS,ICOPYS)

Submit the JCL.

This will:

  1. Bypass the analysis output code till it reaches the .SYSTEM RELOADS card

  2. Execute until it reaches the .SYSTEM RELOADE card

  3. Bypass the subsequent code till it reaches the .SYSTEM ICOPYS card

  4. Execute until it reaches the .SYSTEM ICOPYE card

  5. Bypass all subsequent code till the end of the job.

Make sure that there are no other .SYSTEM cards between the ones that we are using as it looks for the next .SYSTEM card regardless of the label when it terminates the execution of the block. The .RESTART SYSTEM(,,,) card can have a number of system labels in it. You can enter as many system names as you want by separating them with a comma.

The insertion of additional .SYSTEM cards won't impact a normal execution that is not being restarted with the .RESTART SYSTEM card.

Read about the .SYSTEM and .RESTART cards in the CA Batch Processor User Guide.