Data and storage management on z/OS
Previous topic | Next topic | Contents | Glossary | Contact z/OS | PDF


The IEBUPDTE utility: Update data sets with fixed-length records

Data and storage management on z/OS

The IEBUPDTE utility creates multiple members in a partitioned data set, or updates records within a member. While it can be used for other types of records, its main use is to create or maintain JCL procedure libraries or assembler macro libraries.

Today, this utility is used mostly for z/OS® licensed program distributions and maintenance. It is seldom used by TSO users.

This basic example uses IEBUPDTE to add two JCL procedures to the data set named MY.PROCLIB:
//ADDPROC1 JOB 1,SMCHUGH,MSGCLASS=X
//         EXEC PGM=IEBUPDTE
//SYSPRINT DD SYSOUT=*
//SYSUT1   DD DISP=OLD,DSN=MY.PROCLIB
//SYSUT2   DD DISP=OLD,DSN=MY.PROCLIB
//SYSIN    DD DATA
./ ADD LIST=ALL,NAME=MYJOB1
//STEP1 EXEC=SUZNX1
//PRINT DD SYSOUT=A
// (more JCL for MYJOB1)
//SYSUDUMP DD SYSOUT=* (last JCL for MYJOB1)
./ REPL LIST=ALL,NAME=LASTJOB
//LIST EXEC PGM=SUZNLIST
// (more JCL for this procedure)
//* LAST JCL STATEMENT FOR LASTJOB
./ ENDUP
/*

This example requires a few comments:

  • When a library is to be updated, then SYSUT1 and SYSUT2 both point to that library. (If they point to different libraries, the SYSUT1 library is copied to the SYSUT2 library and then updated.)
  • The SYSIN DD DATA format indicates that the data in the input stream contains // (two slashes) in columns one and two. The information in the input stream should not be interpreted as JCL. The end of the input stream is indicated by /*.
  • The IEBUPDTE utility uses control statements with the symbols ./ (a period and slash) in the first two columns.
  • A member named MYJOB1 is added to MY.PROCLIB; this member should not already exist in the library.
  • A member named LASTJOB is replaced with new contents.

The IEBUPDTE utility also can add or replace statements in a member based on the sequence numbers in the statements. This capability is one of the few remaining uses for sequence numbers in JCL or source statements.

Again, IEBUPDTE is typically used for program distribution and maintenance. For example, if a software vendor's product adds 25 JCL procedures to a customer's procedure library, the vendor might package the procedures as an IEBUPDTE job. One advantage is that all the material is in source format and the customer can easily review the contents before running the job.





Copyright IBM Corporation 1990, 2010