Database Management for DB2 for z/os: How can parts of an analysis output be executed?
search cancel

Database Management for DB2 for z/os: How can parts of an analysis output be executed?

book

Article ID: 23793

calendar_today

Updated On:

Products

Database Management for DB2 for z/OS - Administration Suite

Issue/Introduction

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?

 

Environment

Release: R20
Component: RBP

Resolution

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 to generate the JCL and 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.

 

Additional Information

Read about the .SYSTEM and RESTART Command—Restart Execution cards in the Use the Batch Processor.