GA Data Provider Instructions Appendix G

Att_GADPIAppendixG NSLDS.pdf

National Student Loan Data System (NSLDS)(KI)

GA Data Provider Instructions Appendix G

OMB: 1845-0035

Document [pdf]
Download: pdf | pdf
GA Data Provider Instructions

Appendix G: DataPrep JCL for Z/OS LE

Appendix G: DataPrep JCL for OS/390Z/OS LE
Introduction...........................................................................................................................G–1
Step 1: JCL for Installation ...................................................................................................G–1
Step 2: JCL for the Unload Tape ..........................................................................................G–2
Step 3: JCL for DataPrep Extract Validation........................................................................G–7
Step 4: JCL for DataPrep Delta Processing ........................................................................G–15
Step 5: JCL for Current File Backup ..................................................................................G–20
Step 6: JCL for Previous File Backup.................................................................................G–22
Step 7: JCL for NSLDS DataPrep Reporting .....................................................................G–25
Step 8: JCL for Renaming the Submittal File.....................................................................G–31

June 1, 2005

Version4.1
G–i

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

Introduction
The DataPrep JCL for Z/OS LE installation process creates dataset names on your system. The
Unload JCL provided contains a specific naming convention. In particular, the second and last
node in the dataset names contain identifying information (Version Release Date) to assist in
tracking and identifying software in use. We strongly recommend that you retain this naming
convention.

Step 1: JCL for Installation
The following JCL will be used once to unload additional JCL. JCL for the Unload Tape, step 2,
will then unload the rest of the tape. Your site will probably have a JCL file similar to this that
executes IEBCOPY. You should modify the file to have the file names indicated below.
The Install JCL
// CLASS=A,MSGCLASS=A,REGION=4M,NOTIFY=&SYSUID
//*
//* -------------------- DSY20012 -------------------//* JOB DESCRIPTION
//*
//* SYSTEM SOFTWARE
- GA DATA PROVIDER TAPE UNLOAD - PART1
//*
//* PSTEP010
- IEBCOPY
//*
//* -------------------------------------------------//*
//
SET ENV=P
//
SET LVLSET=LS990923
//
SET SPACE01=TRK
//
SET UNITPERM=SYSDA
//
SET UNITTAPE=CART
//
SET VR=PROD
//*
//*
//* JOBLIB
DD DISP=SHR,DSN=??????????????????????
//*
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP010 EXEC PGM=IEBCOPY
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..CUTTAPE.&LVLSET,
//
DISP=SHR,
//
UNIT=&UNITTAPE,
//
LABEL=(2,SL)
//***
VOLSER=??????

June 1, 2005

Version4.1
G–1

GA Data Provider Instructions
//*
//SYSUT2
//
//
//
//*
//*
//
//PSTEP011

Appendix G: DataPrep JCL for OS/390 LE

DD DSN=NSLDS&ENV..&VR..CUTTAPE.&LVLSET,
DISP=(NEW,CATLG,DELETE),
SPACE=(&SPACE01,(2,1,2)),
UNIT=&UNITPERM

IF PSTEP010.RC NE 0 THEN
EXEC CKRCODE

Step 2: JCL for the Unload Tape
The following JCL was unloaded to your system in step 1. This JCL sets up the actual libraries
and software to allow you to execute the DataPrep software. This Unload Tape JCL will
normally run only once. However, if you need to run this JCL again to reinstall DataPrep, be
aware that step PSTEP005 will delete all datasets previously created.
This JCL may be referenced from the library created with CUTTAPE as part of the name
(created in step 1). The library member name is UNLOAD.
The Unload JCL
//PSY20013 JOB (P75333AA-5100AAAA,066),'GA TAPE UNLD2',
// CLASS=A,MSGCLASS=A,REGION=4M,NOTIFY=&SYSUID
//*
//* -------------------- DSY20013 -------------------//* JOB DESCRIPTION
//*
//* SYSTEM SOFTWARE
- GA DATA PROVIDER TAPE UNLOAD - PART2
//*
//* PSTEP010
- IEBGENER
//* PSTEP020
- IEBGENER
//* PSTEP030
- IEBCOPY
//* PSTEP040
- IEBCOPY
//* PSTEP050
- IEBCOPY
//* PSTEP060
- IEBCOPY
//* PSTEP070
- IEBCOPY
//* PSTEP080
- IEBGENER
//*
//* -------------------------------------------------//*
//
SET ENV=P
//
SET LVLSET=LS990923
//
SET SPACE01=TRK
//
SET UNITPERM=SYSDA
//
SET UNITTAPE=CART
//
SET VR=PROD
//
SET SC=GA
//*
//* JOBLIB
DD DISP=SHR,DSN=??????????????????????????????
//*

June 1, 2005

Version4.1
G–2

GA Data Provider Instructions
//*
//PSTEP005
//*
//TD1
//
//
//
//*
//TD2
//
//
//
//*
//TD3
//
//
//
//*
//TD4
//
//
//
//*
//TD5
//
//
//
//*
//TD6
//
//
//
//*
//TD7
//
//
//
//*
//TD8
//
//
//
//*
//*
//*
//PSTEP010
//*
//SYSIN
//*
//SYSPRINT
//*
//SYSUT1
//
//
//
//
//***

Appendix G: DataPrep JCL for OS/390 LE

EXEC PGM=IEFBR14
DD DSN=NSLDS&ENV..&VR..&SC..DOC.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..DBEXT.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..JCLLIB.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..LOAD.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..DBEXTERR.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..LOADERR.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM,,DEFER)

EXEC PGM=IEBGENER
DD DUMMY
DD SYSOUT=*
DD DSN=NSLDS.&VR..DOC.&LVLSET,
DISP=SHR,
LABEL=(3,SL),
UNIT=&UNITTAPE,
VOL=(,RETAIN)
VOL=(,RETAIN,,SER=&VOLSER)

June 1, 2005

Version4.1
G–3

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..DOC.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(2,1)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP020 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..DBEXT.&LVLSET,
//
DISP=SHR,
//
LABEL=(4,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP010.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..DBEXT.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(1,1)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP020.RC NE 0 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP030 EXEC PGM=IEBCOPY
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..CNTL.&LVLSET,
//
DISP=SHR,
//
LABEL=(5,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP020.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(2,1,2)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP030.RC NE 0 THEN
//PSTEP031 EXEC CKRCODE

June 1, 2005

Version4.1
G–4

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP040 EXEC PGM=IEBCOPY
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..JCLLIB.&LVLSET,
//
DISP=SHR,
//
LABEL=(6,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP030.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..JCLLIB.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(10,2,2)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP040.RC NE 0 THEN
//PSTEP041 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP050 EXEC PGM=IEBCOPY
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..LOAD.&LVLSET,
//
DISP=SHR,
//
LABEL=(7,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP040.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..LOAD.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(10,1,1)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP050.RC NE 0 THEN
//PSTEP051 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP060 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*

June 1, 2005

Version4.1
G–5

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//SYSUT1
DD DSN=NSLDS.&VR..DBEXTERR.&LVLSET,
//
DISP=SHR,
//
LABEL=(8,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP050.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..DBEXTERR.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(1,1)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP060.RC NE 0 THEN
//PSTEP061 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP070 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..LOADERR.&LVLSET,
//
DISP=SHR,
//
LABEL=(9,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP060.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..LOADERR.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),
//
SPACE=(&SPACE01,(1,1)),
//
UNIT=&UNITPERM
//*
//*
//
IF PSTEP070.RC NE 0 THEN
//PSTEP071 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBCOPY -------------------//*
//PSTEP080 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS.&VR..PREVEXT.&LVLSET,
//
DISP=SHR,
//
LABEL=(10,SL),
//
UNIT=&UNITTAPE,
//
VOL=(,RETAIN,,REF=*.PSTEP070.SYSUT1)
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
//
DISP=(NEW,CATLG,DELETE),

June 1, 2005

Version4.1
G–6

GA Data Provider Instructions
//
//
//*
//*
//
//PSTEP081
//
//*
//*

Appendix G: DataPrep JCL for OS/390 LE

SPACE=(&SPACE01,(1,1)),
UNIT=&UNITPERM

IF PSTEP080.RC NE 0 THEN
EXEC CKRCODE
ENDIF

Step 3: JCL for DataPrep Extract Validation
The following JCL executes the DataPrep programs that perform Extract Validation and error
reporting, and creates the Validated Extract file that will be the input to the Delta process. It can
be referenced from the library created with JCLLIB as part of the name. The library member
name is PRBD1000.
The summary error report can be sorted three different ways (by Error Count, Field Code, or
Error Code) by changing the SET statement. See the SET statements in the in-stream JCL
documentation below. The detail error report is only sorted by SSN.
The JCL includes a sample Database Extract file containing 50 student/loan records of which 2
are in error. This should be reported in the Extract Validation Log File Report, the Detail Extract
Error Report, and the Summary Extract Error Report, which are outputs from the Extract
Validation process.
A second sample extract is included for your use that contains 50 student/loan records and which
error thresholds are exceeded. If you use this sample, an empty Validated Extract file will be
created. You can use this second sample to test that you have installed DataPrep correctly. To
use the second sample, you must change the JCL to reference the sample Database Extract
containing DBEXTERR as part of the name. Be sure to comment out or delete the sample files
once you have completed testing.
Previous Datasets
The first step in the JCL will delete any datasets previously created. If you want to save your
previous Validated Extract file, you must copy it to another file name or run the backup JCL.
Extract Validation JCL
//PRBD1000 JOB (P75333AA-5100AAAA,066),'GA 1ST LEV VER',
// CLASS=A,MSGCLASS=A,REGION=6M
//*
//* -------------------- RBD100PB -------------------//* JOB DESCRIPTION
//*
//* REPOSITORY BUILD
- GA EXTRACT VALIDATION AND ERROR REPORTING
//*

June 1, 2005

Version4.1
G–7

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//* PSTEP010
- IEFBR14
DELETE FILES FROM PREVIOUS RUN
//* PSTEP020
- TIRIOVFI SPECIAL FOR COOL:GEN
//* PSTEP030
- RBD100PB VALIDATION
//* PSTEP040
- SORT
SORT OF EXTRACT ERROR FILE
//*
FOR DETAIL ERROR REPORT
//* PSTEP050
- TIRIOVFI SPECIAL FOR COOL:GEN
//* PSTEP060
- RBD200DB DETAIL ERROR REPORTING
//* PSTEP070
- IEBGENER PRINT DETAIL ERROR REPORT
//* PSTEP080
- UTD300PB SUMMARY ERROR REPORT COUNTER
//* PSTEP090
- SORT
SORT SUMMARY ERROR REPORT FILE
//* PSTEP100
- UTD400PB SUMMARY ERROR REPORT PROGRAM
//* PSTEP110
- IEBGENER PRINT SUMMARY ERROR REPORT
//*
//* -------------------------------------------------//* THIS IS SAMPLE JCL THAT WILL GO TO THE DATA PROVIDER'S SITE.
//* IT IS NOT TO BE RUN IN PRODUCTION AT NSLDS AND DOES NOT
//* REFLECT NSLDS PROGRAMMING STANDARDS. THIS JCL IS SENT TO THE
//* DATA PROVIDER AS A SUGGESTED SAMPLE AND ITS USE IS OPTIONAL.
//*
//
SET ENV=P
//
SET JOBNME=PRBD1000
//
SET LVLSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME01=PRBD1000
//
SET UNITPERM=SYSDA
//
SET UNITTEMP=SYSDA
//
SET VR=PROD
//
SET SC=GA
//*
ERROR COUNT ORDER
//*
SET SORTPARM=PUTD4001
//*
FIELD CODE ORDER
//*
SET SORTPARM=PUTD4002
//*
ERROR CODE ORDER
//
SET SORTPARM=PUTD4003
//*
//*
//*
//*JOBLIB
DD DSN=NSLDS&ENV..&VR..&SC..LOAD.&LVLSET,DISP=SHR
//*
//* -------------------- IEFBR14 -------------------//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.VALEXT,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD2
DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD3
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTERR,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)

June 1, 2005

Version4.1
G–8

GA Data Provider Instructions
//*
//TD4
//
//
//
//*
//TD5
//
//
//
//*
//TD6
//
//
//
//*
//TD7
//
//
//
//*
//TD8
//
//
//
//*
//TD9
//
//
//
//*
//TD10
//
//
//
//*
//
//PSTEP011
//
//*
//PSTEP020
//*
//TIRERRF
//*
//TIRIOVF
//
//
//
//
//
//
//*
//TIRMSGF
//*
//
//PSTEP021
//

Appendix G: DataPrep JCL for OS/390 LE

DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.LOGFILE,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP060.ERRORRPT,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP050.IOVFILE,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.ERRSORT,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORCNT,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP090.ERRORCNT,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORSUM,
DISP=(MOD,DELETE,DELETE),
SPACE=(TRK,(1,1)),
UNIT=(&UNITPERM)
IF PSTEP010.RC NE 0 THEN
EXEC CKRCODE
ENDIF
EXEC PGM=TIRIOVFI
DD SYSOUT=*
DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
BLKSIZE=0,
DISP=(NEW,CATLG,DELETE),
LRECL=4096,
RECFM=FB,
SPACE=(TRK,(1,1),RLSE),
UNIT=&UNITTEMP
DD SYSOUT=*
IF PSTEP020.RC NE 110 THEN
EXEC CKRCODE
ENDIF

June 1, 2005

Version4.1
G–9

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//* -------------------- RBD100PB -------------------//*
//PSTEP030 EXEC PGM=RBD100PB
//*
//*
//GA001
DD DSN=NSLDS&ENV..&VR..&SC..DBEXT.&LVLSET,
//
DISP=SHR
//*
//TEFFILE DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PUTD3000),
//
DISP=SHR
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.VALEXT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(50,50),RLSE),
//
UNIT=(&UNITPERM)
//*
//ER001
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTERR,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(50,50),RLSE),
//
UNIT=(&UNITPERM)
//*
//LG001
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.LOGFILE,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=80,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,50),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
//
DISP=(OLD,DELETE,KEEP)
//*
//TIRMSGF DD SYSOUT=*
//*
//*
//
IF PSTEP030.RC NE 1000 THEN
//PSTEP031 EXEC CKRCODE
//
ENDIF
//*
//*------------------SORT----------------------//*

June 1, 2005

Version4.1
G–10

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//PSTEP040 EXEC PGM=SORT
//*
//SORTIN
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTERR,
//
DISP=SHR
//*
//SORTOUT DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.ERRSORT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(5,5),RLSE),
//
UNIT=(&UNITPERM)
//*
//SORTWK01 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK02 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK03 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SYSIN
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PRBD4000),
//
DISP=SHR
//*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//*
//
IF PSTEP040.RC NE 0 THEN
//PSTEP041 EXEC CKRCODE
//
ENDIF
//*
//*-------------------TIRIOVFI---------------------//*
//PSTEP050 EXEC PGM=TIRIOVFI
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP050.IOVFILE,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=4096,
//
RECFM=FB,
//
SPACE=(CYL,(1,1),RLSE),
//
UNIT=&UNITTEMP
//*
//TIRMSGF DD SYSOUT=*
//*
//*
//
IF PSTEP050.RC NE 110 THEN
//PSTEP051 EXEC PGM=CMPABEND
//
ENDIF
//*
//*--------------------RBD200PB------------------------//*
//PSTEP060 EXEC PGM=RBD200PB

June 1, 2005

Version4.1
G–11

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.ERRSORT,
//
DISP=SHR
//*
//TEFFILE DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PUTD3000),
//
DISP=SHR
//*
//GA006
DD DSN=NSLDS&ENV..&JOBNME..PSTEP060.ERRORRPT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=133,
//
RECFM=FBA,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=&UNITTEMP
//*
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP050.IOVFILE,
//
DISP=(OLD,DELETE,KEEP)
//*
//TIRMSGF DD SYSOUT=*
//*
//*
//
IF PSTEP060.RC NE 1000 THEN
//PSTEP061 EXEC CKRCODE
//
ENDIF
//*
//*-----------------------IEBGENER-------------------------//*
//PSTEP070 EXEC PGM=IEBGENER
//*
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP060.ERRORRPT,
//
DISP=SHR
//*
//SYSUT2
DD SYSOUT=*
//*
//* FOLLOWING WILL SEND REPORT DIRECTLY TO HP828 PRINTER
//*
//* SYSUT2
DD SYSOUT=(Q,,3E01),
//*
DCB=(*.SYSUT1)
//*
//*
//
IF PSTEP070.RC NE 0 THEN
//PSTEP071 EXEC PGM=CMPABEND

June 1, 2005

Version4.1
G–12

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
ENDIF
//*
//*------------------UTD300PB-----------------------//*
//PSTEP080 EXEC PGM=UTD300PB
//*
//GA001
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTERR,
//
DISP=SHR
//*
//TEFFILE DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PUTD3000),
//
DISP=SHR
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORCNT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=117,
//
RECFM=FB,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=&UNITTEMP
//*
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//
IF PSTEP080.RC NE 0 THEN
//PSTEP081 EXEC CKRCODE
//
ENDIF
//*
//*
//*------------------SORT---------------//*
//PSTEP090 EXEC PGM=SORT
//*
//SORTIN
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORCNT,
//
DISP=SHR
//*
//SORTOUT DD DSN=NSLDS&ENV..&JOBNME..PSTEP090.ERRORCNT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=117,
//
RECFM=FB,
//
SPACE=(&SPACE01,(5,5),RLSE),
//
UNIT=(&UNITPERM)
//*
//SORTWK01 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK02 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK03 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SYSIN
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(&SORTPARM),

June 1, 2005

Version4.1
G–13

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
DISP=SHR
//*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//*
//
IF PSTEP090.RC NE 0 THEN
//PSTEP091 EXEC CKRCODE
//
ENDIF
//*
//*--------------------UTD400PB-----------------------//*
//PSTEP100 EXEC PGM=UTD400PB
//*
//GA001
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(&SORTPARM),
//
DISP=SHR
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP090.ERRORCNT,
//
DISP=SHR
//*
//GA003
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORSUM,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=133,
//
RECFM=FBA,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//
IF PSTEP090.RC NE 0 THEN
//PSTEP101 EXEC CKRCODE
//
ENDIF
//*
//*
//*----------------------IEBGENER-----------------------//*
//PSTEP110 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORSUM,
//
DISP=SHR
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP110.RC NE 0 THEN
//PSTEP111 EXEC CKRCODE
//
ENDIF
//*

June 1, 2005

Version4.1
G–14

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

Step 4: JCL for DataPrep Delta Processing
The following JCL executes Delta Processing. The output from this job will be the Delta
Processing Log file and the final Submittal file. It can be referenced from the library created with
JCLLIB as part of the name. The library member name is PRBD6000.
The Validated Extract file from PRBD1000 is the input to this job. It is sorted by the 61-byte
identifier. The sorted Validated Extract file is the input to Delta Processing. The JCL references
a sample prior Validated Extract file containing ‘PREVEXT’ as part of the name. The current
Validated Extract file should come from the Extract Validation (PRBD1000) procedure. When
using the sample prior Validated Extract file provided, the current Validated Extract file should
be the output from PRBD1000 with the sample input file with ‘DBEXT’ as part of the file name.
Using a different file could produce unexpected results. The output Submittal file will be sent to
NSLDS. The sample Validated Extract file contains 50 records. Twenty records should be
written to the final Submittal file.
Once the Delta process runs, steps 50 to 70 will create a backup of the previous Validated
Extract file. Step 60 will delete the previous Validated Extract file, and step 70 will replace it
with the sorted Validated Extract file.
Previous Datasets
The first step in the JCL will delete any datasets previously created. If you want to save your
previous Submittal file, you must copy it to another file name or run the backup JCL.
Delta Processing JCL
//PRBD6000 JOB (P75333AA-5100AAAA,066),'GA DELTA PROCE',
// CLASS=A,MSGCLASS=A,REGION=6M
//*
//* -------------------- RBD600PB -------------------//* JOB DESCRIPTION
//*
//* REPOSITORY BUILD
- GA DELTA PROCEDURE
//*
//* PSTEP010
- IEFBR14
DELETE FILES FROM PREVIOUS RUN
//* PSTEP020
- TIRIOVFI SPECIAL FOR COOL:GEN
//* PSTEP030
- SORT
SORT VALIDATED EXTRACT FILE
//*
BY IDENTIFIER
//* PSTEP040
- RBD600PB DELTA PROCESSING
//* PSTEP050
- IEBGENER COPY PREVIOUS EXT FILE TO BKUP
//* PSTEP060
- IEFBR14
DELETE PREVIOUS EXT FILE
//* PSTEP070
- IEBGENER COPY CURRENT VALIDATED EXT FILE
//*
TO THE PREVIOUS EXTRACT FILE
//*
FOR NEXT PERIOD PROCESSING
//*
//* -------------------------------------------------//* THIS IS SAMPLE JCL THAT WILL GO TO THE DATA PROVIDER'S SITE.
//* IT IS NOT TO BE RUN IN PRODUCTION AT NSLDS AND DOES NOT
//* REFLECT NSLDS PROGRAMMING STANDARDS. THIS JCL IS SENT TO THE
//* DATA PROVIDER AS A SUGGESTED SAMPLE AND ITS USE IS OPTIONAL.

June 1, 2005

Version4.1
G–15

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//
SET JOBNME=PRBD6000
//
SET LVLSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME01=PRBD1000
//
SET UNITPERM=SYSDA
//
SET UNITTEMP=SYSDA
//
SET VR=PROD
//
SET SC=GA
//
SET ENV=P
//
SET SORTPARM=PRB01000
//*
//*
//*
//JOBLIB
DD DSN=NSLDS&ENV..&VR..&SC..LOAD.&LVLSET,DISP=SHR
//*
//* -------------------- IEFBR14 -------------------//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.LOG,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD2
DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD3
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.SUBMITTL,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD4
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTSORT,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD5
DD DSN=NSLDS&ENV..&VR..&SC..PREVBKUP.&LVLSET,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//PSTEP020 EXEC PGM=TIRIOVFI
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=4096,

June 1, 2005

Version4.1
G–16

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
RECFM=FB,
//
SPACE=(TRK,(1,1),RLSE),
//
UNIT=&UNITTEMP
//*
//TIRMSGF DD SYSOUT=*
//*
//
IF PSTEP020.RC NE 110 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF
//*
//*------------------SORT----------------------------------//*
//PSTEP030 EXEC PGM=SORT
//*
//SORTIN
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.VALEXT,
//
DISP=SHR
//*
//SORTOUT DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTSORT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(5,5),RLSE),
//
UNIT=(&UNITPERM)
//*
//SORTWK01 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK02 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK03 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SYSIN
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(&SORTPARM),
//
DISP=SHR
//*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//*
//
IF PSTEP030.RC NE 0 THEN
//PSTEP031 EXEC CKRCODE
//
ENDIF
//*
//*
//* -------------------- RBD600PB -------------------//*
//PSTEP040 EXEC PGM=RBD600PB
//*
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTSORT,
//
DISP=SHR
//*
//GA004
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
//
DISP=SHR
//*

June 1, 2005

Version4.1
G–17

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//GA003
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.SUBMITTL,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,KEEP),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(50,50),RLSE),
//
UNIT=(&UNITPERM)
//*
//LG001
DD DSN=NSLDS&ENV..&JOBNME..PSTEP040.LOG,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,KEEP),
//
LRECL=80,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,50),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.IOVFILE,
//
DISP=(OLD,DELETE,KEEP)
//*
//TIRMSGF DD SYSOUT=*
//*
//*
//
IF PSTEP040.RC NE 1000 THEN
//PSTEP041 EXEC CKRCODE
//
ENDIF
//*
//*
//*-----------------IEBGENER-------------------------------//* MAKE A BACKUP COPY OF THE PREVIOUS EXTRACT FILE
//*
//PSTEP050 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..PREVBKUP.&LVLSET,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*

June 1, 2005

Version4.1
G–18

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//*
//
IF PSTEP050.RC NE 0 THEN
//PSTEP051 EXEC CKRCODE
//
ENDIF
//*
//*-----------------IEFBR14--------------------------------//* DELETE THE CURRENT PREVIOUS EXTRACT FILE
//*
//PSTEP060 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//
IF PSTEP060.RC NE 0 THEN
//PSTEP061 EXEC CKRCODE
//
ENDIF
//*
//*-----------------IEBGENER-------------------------------//* MOVE THE CURRENT SORTED VALIDATED EXTRACT FILE TO
//* THE PREVIOUS EXTRACT FILE FOR NEXT PERIOD PROCESSING
//*
//PSTEP070 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP030.EXTSORT,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LVLSET,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP070.RC NE 0 THEN
//PSTEP071 EXEC CKRCODE
//
ENDIF

//*

June 1, 2005

Version4.1
G–19

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

Step 5: JCL for Current File Backup
The following JCL is the software to perform current file backup. This JCL copies the Validated
Extract file, Submittal file, and Prior Validated Extract file to files with ‘BKUP01’ appended to
the name. This JCL can be run after the Delta processing step or independently. This step is
optional. We do not require you use this JCL if you have a preferred method to back up files.
This JCL may be referenced from the library created with JCLLIB as part of the name. The
library member name is PRD01004.
DataPrep Current Backup JCL
//PRD01004 JOB (P75333AA-5100AAAA,066),'GA DELTA BKUP',
// CLASS=N,MSGCLASS=A,REGION=4M
//*
//* -------------------- PRB01004 -------------------//* JOB DESCRIPTION
//*
//* REPOSITORY BUILD
- GA DELTA PROCESSING
//*
CURRENT FILE BACKUP
//*
//* PSTEP010
- IEFBR14
//* PSTEP020
- IEBGENER
//* PSTEP030
- IEBGENER
//* PSTEP040
- IEBGENER
//*
//* -------------------------------------------------//*
//
SET DB2=NSLP
//
SET ENV=P
//
SET LEVSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME00=PRBD1000
//
SET SRCNME01=PRBD6000
//
SET UNITPERM=SYSDA
//
SET UNITTEMP=SYSDA
//
SET VR=PROD
//
SET SC=GA
//*
//* -------------------- IEFBR14 -------------------//*
//*
//JOBLIB
DD DSN=DB2.&DB2..DSNLOAD,DISP=SHR
//
DD DSN=DB2.&DB2..DSNEXIT,DISP=SHR
//
DD DSN=DB2.BMCUTIL.&DB2..LOAD,DISP=SHR
//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP020.VALEXT.BKUP01,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD2
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.SUBMITTL.BKUP01,

June 1, 2005

Version4.1
G–20

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD3
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP040.PREVEXT.BKUP01,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP020 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP030.VALEXT,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP020.VALEXT.BKUP01,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP020.RC NE 0 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP030 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP040.SUBMITTL,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.SUBMITTL.BKUP01,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),

June 1, 2005

Version4.1
G–21

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP030.RC NE 0 THEN
//PSTEP031 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP040 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LEVSET,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP040.PREVEXT.BKUP01,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP040.RC NE 0 THEN
//PSTEP041 EXEC CKRCODE
//
ENDIF

Step 6: JCL for Previous File Backup
The following JCL is the software to perform previous file backup. This JCL copies the current
backup copies of the Validated Extract file, Submittal file, and Prior Validated Extract file to
files with ‘BKUP02’ appended to the name. This JCL can be run after the current backup job.
This step is optional. We do not require you use this JCL if you have a preferred method to back
up files.
This JCL may be referenced from the library created with JCLLIB as part of the name. The
library member name is PRD01003.
DataPrep Previous Backup JCL
//PRD01003 JOB (P75333AA-5100AAAA,066),'GA DELTA BKUP',
// CLASS=N,MSGCLASS=A,REGION=4M
//*
//* -------------------- DRD01003 --------------------

June 1, 2005

Version4.1
G–22

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//* JOB DESCRIPTION
//*
//* REPOSITORY BUILD
- GA DELTA PROCESSING
//*
PREVIOUS FILE BACKUP
//*
//* PSTEP010
- IEFBR14
//* PSTEP020
- IEBGENER
//* PSTEP030
- IEBGENER
//* PSTEP040
- IEBGENER
//*
//* -------------------------------------------------//*
//
SET DB2=NSLP
//
SET ENV=P
//
SET LEVSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME00=PRBD1000
//
SET SRCNME01=PRBD6000
//
SET UNITPERM=SYSDA
//
SET UNITTEMP=SYSDA
//
SET VR=PROD
//
SET SC=GA
//*
//* -------------------- IEFBR14 -------------------//*
//*
//JOBLIB
DD DSN=DB2.&DB2..DSNLOAD,DISP=SHR
//
DD DSN=DB2.&DB2..DSNEXIT,DISP=SHR
//
DD DSN=DB2.BMCUTIL.&DB2..LOAD,DISP=SHR
//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP020.VALEXT.BKUP02,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD2
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.SUBMITTL.BKUP02,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD3
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP040.PREVEXT.BKUP02,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP020 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY

June 1, 2005

Version4.1
G–23

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP020.VALEXT.BKUP01,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&SRCNME00..PSTEP020.VALEXT.BKUP02,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP020.RC NE 0 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP030 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.SUBMITTL.BKUP01,
//
DISP=SHR
//*
//SYSUT2
DD DSN=NSLDS&ENV..&SRCNME01..PSTEP030.SUBMITTL.BKUP02,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP030.RC NE 0 THEN
//PSTEP031 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP040 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&VR..&SC..PREVEXT.&LEVSET,
//
DISP=SHR

June 1, 2005

Version4.1
G–24

GA Data Provider Instructions
//*
//SYSUT2
//
//
//
//
//
//
//*
//SYSUT2
//*
//*
//
//PSTEP041
//

Appendix G: DataPrep JCL for OS/390 LE

DD DSN=NSLDS&ENV..&SRCNME01..PSTEP040.PREVEXT.BKUP02,
BLKSIZE=0,
DISP=(NEW,CATLG,DELETE),
LRECL=640,
RECFM=FB,
SPACE=(&SPACE01,(100,10),RLSE),
UNIT=(&UNITPERM)
DD SYSOUT=*

IF PSTEP040.RC NE 0 THEN
EXEC CKRCODE
ENDIF

Step 7: JCL for NSLDS DataPrep Reporting
The following JCL executes the software to perform error reporting. This JCL will be used
primarily to report any errors you receive from the Load Process Error file that you will receive
from NSLDS after each submittal. It can also be used to report errors from the Extract Validation
process.
This JCL may be referenced from the library created with JCLLIB as part of the name. The
library member name is PRBD2000.
As with the Validation and Error Reporting JCL above, the option to sort the summary error
report three different ways (by Error Count, Field Code, or Error Code) is available by changing
the SET statement. See the SET statements in the in-stream JCL documentation below. The
Detail Error Report is only sorted by SSN.
Remember that the first step in the JCL will delete any datasets previously created. If you want to
save your previous error files, you may want to copy them to another file name or run the backup
JCL.
The JCL includes a sample Load Process Error file containing 11 student/loan records. This
should be reported in the Detail Error Report and the Summary Error Report, which are outputs
from this process.
DataPrep Reporting JCL
//PRBD2000 JOB (P75333AA-5100AAAA,066),'GA ERROR RPT',
// CLASS=A,MSGCLASS=A,REGION=6M,NOTIFY=L#B
//*
//* -------------------- RBD221DB -------------------//PRBD2000 JOB (P75333AA-5100AAAA,066),'GA ERROR RPT',
// CLASS=A,MSGCLASS=A,REGION=6M
//*
//* -------------------- RBD200PB -------------------//* JOB DESCRIPTION

June 1, 2005

Version4.1
G–25

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//* REPOSITORY BUILD
- GA EXTRACT OR LOAD ERROR REPORTING
//*
//* PSTEP010
- IEFBR14
DELETE FILES FROM PREVIOUS RUN
//* PSTEP020
- SORT
SORT EXTRACT/LOAD FILE BY SSN
//* PSTEP070
- TIRIOVFI SPECIAL FOR COOL:GEN
//* PSTEP080
- RBD200PB DETAIL ERROR REPORT
//* PSTEP090
- IEBGENER PRINT DETAIL ERROR REPORT
//* PSTEP100
- UTD300PB SUMMARY ERROR REPORT COUNTER
//* PSTEP110
- SORT
SORT SUMMARY ERROR REPORT FILE
//* PSTEP120
- UTD400PB SUMMARY ERROR REPORT PROGRAM
//* PSTEP130
- IEBGENER PRINT SUMMARY ERROR REPORT
//*
//* -------------------------------------------------//* THIS IS SAMPLE JCL THAT WILL GO TO THE DATA PROVIDER'S SITE.
//* IT IS NOT TO BE RUN IN PRODUCTION AT NSLDS AND DOES NOT
//* REFLECT NSLDS PROGRAMMING STANDARDS. THIS JCL IS SENT TO THE
//* DATA PROVIDER AS A SUGGESTED SAMPLE AND ITS USE IS OPTIONAL.
//*
//
SET JOBNME=PRBD2000
//
SET LVLSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME01=PRBD1000
//
SET UNITPERM=SYSDA
//
SET UNITTEMP=SYSDA
//
SET VR=PROD
//
SET ENV=P
//
SET SC=GA
//*
//*
ERROR COUNT ORDER
//
SET SORTPARM=PUTD4001
//*
//*
FIELD CODE ORDER
//*
SET SORTPARM=PUTD4002
//*
//*
ERROR CODE ORDER
//*
SET SORTPARM=PUTD4003
//*
//*
//JOBLIB
DD DISP=SHR,DSN=NSLDS&ENV..&VR..&SC..LOAD.&LVLSET
//*
//* -------------------- IEFBR14 -------------------//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD5
DD DSN=NSLDS&ENV..&JOBNME..PSTEP070.IOVFILE,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD6
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORRPT,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD7
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORCNT,
//
DISP=(MOD,DELETE,DELETE),

June 1, 2005

Version4.1
G–26

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD8
DD DSN=NSLDS&ENV..&JOBNME..PSTEP110.ERRORCNT,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD9
DD DSN=NSLDS&ENV..&JOBNME..PSTEP120.ERRORSUM,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//TD10
DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.EXTSORT,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- SORT
-------------------//*
//PSTEP020 EXEC PGM=SORT
//*
//*
//SORTIN
DD DSN=NSLDS&ENV..&VR..&SC..LOADERR.&LVLSET,
//
DISP=SHR
//*
//SORTOUT DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.EXTSORT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(1,1),RLSE),
//
UNIT=(&UNITPERM)
//*
//SORTWK01 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK02 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK03 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SYSIN
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PRBD4000),
//
DISP=SHR
//*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//*
//
IF PSTEP020.RC NE 0 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF

June 1, 2005

Version4.1
G–27

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//*
//PSTEP070 EXEC PGM=TIRIOVFI
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP070.IOVFILE,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=4096,
//
RECFM=FB,
//
SPACE=(CYL,(1,1),RLSE),
//
UNIT=&UNITTEMP
//*
//TIRMSGF DD SYSOUT=*
//*
//
IF PSTEP070.RC NE 110 THEN
//PSTEP071 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- RBD200PB -------------------//*
//PSTEP080 EXEC PGM=RBD200PB
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP020.EXTSORT,
//
DISP=SHR
//*
//TEFFILE DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PUTD3000),
//
DISP=SHR
//*
//GA006
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORRPT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=133,
//
RECFM=FBA,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=&UNITTEMP
//*
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//*
//TIRERRF DD SYSOUT=*
//*
//TIRIOVF DD DSN=NSLDS&ENV..&JOBNME..PSTEP070.IOVFILE,
//
DISP=(OLD,DELETE,KEEP)
//*
//TIRMSGF DD SYSOUT=*
//*
//*
//
IF PSTEP080.RC NE 1000 THEN
//PSTEP081 EXEC CKRCODE
//
ENDIF
//*

June 1, 2005

Version4.1
G–28

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//* -------------------- IEBGENER -------------------//*
//PSTEP090 EXEC PGM=IEBGENER
//*
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=NSLDS&ENV..&JOBNME..PSTEP080.ERRORRPT,
//
DISP=SHR
//*
//SYSUT2
DD SYSOUT=*
//*
//*
//
IF PSTEP090.RC NE 0 THEN
//PSTEP091 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- UTD300PB -------------------//*
//PSTEP100 EXEC PGM=UTD300PB
//*
//GA001
DD DSN=NSLDS&ENV..&VR..&SC..LOADERR.&LVLSET,
//
DISP=SHR
//*
//TEFFILE DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(PUTD3000),
//
DISP=SHR
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORCNT,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=117,
//
RECFM=FB,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=&UNITTEMP
//*
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//
IF PSTEP100.RC NE 0 THEN
//PSTEP100 EXEC CKRCODE
//
ENDIF
//*
//*
//* -------------------- SORT
-------------------//*
//PSTEP110 EXEC PGM=SORT
//*
//SORTIN
DD DSN=NSLDS&ENV..&JOBNME..PSTEP100.ERRORCNT,
//
DISP=SHR
//*
//SORTOUT DD DSN=NSLDS&ENV..&JOBNME..PSTEP110.ERRORCNT,

June 1, 2005

Version4.1
G–29

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=117,
//
RECFM=FB,
//
SPACE=(&SPACE01,(5,5),RLSE),
//
UNIT=(&UNITPERM)
//*
//SORTWK01 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK02 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SORTWK03 DD SPACE=(&SPACE01,(100,100)),
//
UNIT=&UNITTEMP
//*
//SYSIN
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(&SORTPARM),
//
DISP=SHR
//*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//*
//*
//
IF PSTEP110.RC NE 0 THEN
//PSTEP111 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- UTD400PB -------------------//*
//PSTEP120 EXEC PGM=UTD400PB
//*
//GA001
DD DSN=NSLDS&ENV..&VR..&SC..CNTL.&LVLSET(&SORTPARM),
//
DISP=SHR
//*
//GA002
DD DSN=NSLDS&ENV..&JOBNME..PSTEP110.ERRORCNT,
//
DISP=SHR
//*
//GA003
DD DSN=NSLDS&ENV..&JOBNME..PSTEP120.ERRORSUM,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=133,
//
RECFM=FBA,
//
SPACE=(&SPACE01,(10,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//SYSABOUT DD SYSOUT=*
//SYSDBOUT DD SYSOUT=*
//SYSOUT
DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//*
//
IF PSTEP120.RC NE 0 THEN
//PSTEP121 EXEC CKRCODE
//
ENDIF
//*
//*
//* -------------------- IEBGENER --------------------

June 1, 2005

Version4.1
G–30

GA Data Provider Instructions
//*
//PSTEP130
//*
//SYSIN
//*
//SYSPRINT
//*
//SYSUT1
//
//*
//SYSUT2
//*
//*
//
//PSTEP121
//

Appendix G: DataPrep JCL for OS/390 LE

EXEC PGM=IEBGENER
DD DUMMY
DD SYSOUT=*
DD DSN=NSLDS&ENV..&JOBNME..PSTEP120.ERRORSUM,
DISP=SHR
DD SYSOUT=*

IF PSTEP120.RC NE 0 THEN
EXEC CKRCODE
ENDIF

//*

Step 8: JCL for Renaming the Submittal File
The following JCL will be used to rename the final Submittal file for transmission to NSLDS.
The Data Provider Instructions specify naming standards for final Submittal file by tape. Modify
the set statements as directed in the JCL.
//PRBD1001 JOB (P75333AA-5100AAAA,066),'RB01 RNME SUB FILE',
// CLASS=N,MSGCLASS=A,REGION=4M
//*
//* -------------------- PRBD1001 -------------------//* JOB DESCRIPTION
//*
//* REPOSITORY BUILD
- GA RENAME SUBMITTAL FILE
//*
//* PSTEP010
- IEFBR14
//* PSTEP020
- IEBGENER
//*
//* -------------------------------------------------//*
//
SET DB2=NSLP
//
SET HLQDSN=NSLDSP
//
SET HLQTGT=NSLINPTP
//
SET LEVSET=LS990923
//
SET SPACE01=CYL
//
SET SRCNME01=PRBD6000
//
SET UNITPERM=SYSDA
//*
//* -------------------- NOTE
-------------------//*
REPLACE XXX WITH GA CODE
//*
REPLACE 9999 WITH SUBMITTAL MONTH (MM) AND DAY (DD)
//*
//
SET GACODE=XXX
//
SET DATEMMDD=9999
//*
//* -------------------- NOTE
-------------------//*

June 1, 2005

Version4.1
G–31

GA Data Provider Instructions

Appendix G: DataPrep JCL for OS/390 LE

//* -------------------- IEFBR14 -------------------//*
//*
//JOBLIB
DD DSN=DB2.&DB2..DSNLOAD,DISP=SHR
//
DD DSN=DB2.&DB2..DSNEXIT,DISP=SHR
//
DD DSN=DB2.BMCUTIL.&DB2..LOAD,DISP=SHR
//*
//PSTEP010 EXEC PGM=IEFBR14
//*
//TD1
DD DSN=&HLQTGT..GA&GACODE..D&DATEMMDD,
//
DISP=(MOD,DELETE,DELETE),
//
SPACE=(TRK,(1,1)),
//
UNIT=(&UNITPERM)
//*
//*
//
IF PSTEP010.RC NE 0 THEN
//PSTEP011 EXEC CKRCODE
//
ENDIF
//*
//* -------------------- IEBGENER -------------------//*
//PSTEP020 EXEC PGM=IEBGENER
//*
//SYSIN
DD DUMMY
//*
//SYSPRINT DD SYSOUT=*
//*
//SYSUT1
DD DSN=&HLQDSN..&SRCNME01..PSTEP040.SUBMITTL,
//
DISP=SHR
//*
//SYSUT2
DD DSN=&HLQTGT..GA&GACODE..D&DATEMMDD,
//
BLKSIZE=0,
//
DISP=(NEW,CATLG,DELETE),
//
LRECL=640,
//
RECFM=FB,
//
SPACE=(&SPACE01,(100,10),RLSE),
//
UNIT=(&UNITPERM)
//*
//*
//
IF PSTEP020.RC NE 0 THEN
//PSTEP021 EXEC CKRCODE
//
ENDIF

June 1, 2005

Version4.1
G–32


File Typeapplication/pdf
File TitleMicrosoft Word - GA DPI Appendix G.doc
AuthorDennis Kemp
File Modified2005-07-28
File Created2005-07-28

© 2024 OMB.report | Privacy Policy