MAINFRAME STANDARDS MANUAL
RETURN TO INDEX
CHAPTER: PROGRAMMING NUMBER: 5.5.01.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: GENERAL INFORMATION
IN THE FOLLOWING CHAPTER ARE DISCUSSIONS OF THE VARIOUS UTILITIES AND
PROCEDURES DEVELOPED FOR USE AT THIS INSTALLATION. THESE ARE INTENDED TO
SUPPLEMENT IBM UTILITIES. INFORMATION CONCERNING THE USE OF IBM UTILITIES SHOULD
BE OBTAINED FROM THE APPROPRIATE IBM MANUAL.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.02.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: COBOL AIDS - ABEND & DUMP
THE ABEND AND DUMP ROUTINES ARE A MEANS FOR THE PROGRAMMER TO FORCE A JOB TO
AN ABNORMAL END. THIS WILL BE NECESSARY IF CONDITIONAL DISPOSITIONS ARE TO BE
USED FOR RESTART.
IF A PROGRAM IS READING CONTROL CARDS AND IT ENCOUNTERS AN ERRONEOUS CARD;
YOUR COBOL PROGRAM WOULD HAVE AN ERROR ROUTINE THAT WOULD PROBABLY DISPLAY A
MESSAGE AND CLOSE THE FILES ASSOCIATED WITH THE JOB STEP. IF THE DISP PARAMETER
WAS (NEW,CATLG,DELETE) THE DATA SET WOULD BE CATALOGUED AND THE JOB WOULD
PROCEED TO THE NEXT STEP.
BY USING THE CALL ABEND ROUTINE IN YOUR COBOL ERROR ROUTINE THE CONDITIONAL
DISPOSITION PARAMETER WOULD BE EXECUTED AND THE DATA SET WOULD BE DELETED AND
THE REMAINDER OF THE JOB TERMINATED. THE JOB STEP WILL GET A USER COMPLETION
CODE 4095.
ERR-RTN.
CALL 'ABEND'. (NOTE: AT THIS POINT THE SAME THING WILL OCCUR AS ANY ABNORMAL
TERMINATION, E.G., SOC7, EXCEPT YOU WILL NOT GET SYSUDUMP.)
BY USING THE CALL DUMP ROUTINE, THE CONDITIONAL DISPOSITION PARAMETER FOR
DATA SETS IS EXECUTED (IN THE EXAMPLE, THE DATA SET IS DELETED), THE JOB STEP IS
TERMINATED AND THE REMAINDER OF THE JOB IS SKIPPED. THE JOB STEP RECEIVES A USER
COMPLETION CODE OF 4094.
ERR-RTN.
CALL 'DUMP'. (SAME AS ABEND EXCEPT A SYSUDUMP IS PRINTED IF THE DD STATEMENT
IS PRESENT)
NOTE: ABNORMAL TERMINATION OF PROGRAMS IN BATCH MESSAGE OR MESSAGE IMS
REGIONS CAUSES ALL DATA BASE UPDATES TO BE BACKED OUT TO THE LAST CHECKPOINT OR
TO THE BEGINNING OF THE STEP IF NO CHECKPOINTS HAVE BEEN TAKEN.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.03.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: HEXLIST
HEXLIST, IS A UTILITY PROGRAM WHOSE FUNCTION IS TO LIST LOGICAL RECORDS FROM
A SEQUENTIAL OR INDEXED SEQUENTIAL DATA SET. LOGICAL RECORDS ARE LISTED 100
CHARACTERS PER LINE GOUP FOR AS MANY LINE GROUPS AS REQUIRED TO DISPLAY AN
ENTIRE LOGICAL RECORD. THE LINE GROUP FORMAT IS CONFIGURED AS FOLLOWS:
LINE 1, CHARACTER REPRESENTATION (IF PRINTABLE)
LINE 2, HEX ZONE
LINE 3 ,HEX DIGIT
LINE 4 ,DELINEATOR LINE (NUMBERED EVERY 5 SPACES)
THIS LINE GROUP FORMAT IS CONVENIENT FOR EXAMINING UNPRINTABLE DATA. HEXLIST
READS QSAM OR ISAM AND PRODUCES THE LISTING WITH QSAM. INPUT RECORD FORMATS
SUPPORTED ARE FIXED, FIXED BLOCKED, VARIABLE, VARIABLE BLOCKED, UNDEFINED (QSAM
ONLY).
THERE IS A LIMITATION OF 100 LOGICAL RECORDS PER EXECUTION OF THE PROGRAM.
JOB CONTROL REQUIREMENTS
THE HEXLIST UTILITY MAY BE EXECUTED BY INCLUDING THE JCL STATEMENT 'EXEC',
WITH THE 'PGM' AND OPTIONALLY THE 'PARM' OPERANDS TO SPECIFY SPECIAL
CONDITIONS. AN EXAMPLE OF THE 'EXEC' STATEMENT TO BE CODED AS FOLLOWS:
//STEPNAME EXEC PGM=HEXLIST,PARM=(ISAM,DECIMAL,START=NNN,
// PARM=(ISAM,DECIMAL,START=NNN,LIMIT=NNN,SELECT=OPER,LTH,LOC,CON)
THE ARGUMENTS THAT MAY BE SPECIFIED IN THE PARM PARAMETER ARE DEFINED AS
FOLLOWS:
ISAM INPUT FILE IS INDEX SEQUENTIAL IS
DECIMAL HEX ZONES AND HEX DIGITS ARE NOT PRINTED. DEC
START=NNN THE LOGICAL RECORD TO START PRINTING. NNN IS A RANGE S=NNN FROM 1
TO 999999999
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.03.02
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
LIMIT=NNN THE NUMBER OF LOGICAL RECORDS TO PRINT. IF THIS L=NNN PARAMETER IS
OMITTED, A DEFAULT OF 10 IS ASSUMED. NNN IS A RANGE FROM 1 TO 9999999.
SELECT=OPER,LTH,LOC,CON) DEFINES THE SELECTION CRITERIA TO BE USED. A MAXIMUM
OF SIX SELECT STATEMENTS MAY BE CODED. THE SELECTION CRITERIA ARE CONCATENATED.
FOR A RECORD TO BE SELECTED THE RECORD MUST MEET THE FIRST SELECTION CRITERIA,
THEN THE SECOND SELECTION CRITERIA, ETC. THE VALUES FOR THE ARGUMENTS IN THE
SELECT STATEMENT ARE AS FOLLOWS:
OPER - THE CONDITIONAL OPERATOR
EQ - EQUAL TO
NE - NOT EQUAL TO
LT - LESS THAN
GT - GREATER THAN
LTH - THE LENGTH OF THE DATA TO BE TESTED. THE LENGTH CAN ONLY BE
SPECIFIED IN A RANGE FROM 1 TO 24
LOC - THE STARTING LOCATION OF THE DATA TO BE TESTED. THE RANGE OF THE
STARTING LOCATION IS 1 TO 4000.
CON - THE CONSTANT TO BE TESTED AGAINST. IF THE ITEM TO BE TESTED IS
PACKED, THEN THE CONSTANT WILL HAVE TO BE MULTI-PUNCHED.
SYSOUT DD - DEFINES THE PRINT DATA SET, NORMALLY SYSOUT=A
SYSIN DD DEFINES THE INPUT DATA SET; MAY BE *, DATA OR A DSN, SUCH AS DSN=XXXXXXXX,UNIT=XXXX,
DISP=(OLD,KEEP),VOL=SER=NNNNNN,DCB=APPLICABLE SUBPARAMETERS),LABEL=(..,..)
(LABEL IS FOR TAPE ONLY).
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.04.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: USCPRINT / USCPUNCH
RESOURCE RESTRICTIONS DICTATE THAT IF A JOB STREAM REQUIRES MORE THAN 100,000
LINES BE PRINTED AND/OR 25,000 CARDS BE PUNCHED, IT WILL BE NECESSARY TO SPOOL
THE PRINT OR PUNCH SYSOUT TO TAPE AND EXECUTE THE ABOVE UTILITY TO DUMP THE
PRINT OR PUNCH SYSOUT.
LANGUAGE CONSIDERATIONS:
1. COBOL. RECORD LENGTH FOR CARDS MUST BE 80 CHARACTERS. RECORD LENGTH FOR
PRINT MUST BE 133 CHARACTERS.
NO CHANGES WILL BE REQUIRED IN THE SOURCE PROGRAM UNLESS PROBLEMS CONCERNING
THE DISPLAY STATEMENT ARE ENCOUNTERED.
DISPLAYS WILL NOT PRINT AT THE BEGINNING OR END OF THE NORMAL SYSOUT REPORT.
IF IT IS NECESSARY FOR A RECAP OR TOTAL LINE TO FOLLOW THE REPORT, THE DISPLAY
MUST BE CHANGED TO A WRITE STATEMENT.
IF THE DISPLAY ITEM DOES NOT HAVE TO IMMEDIATELY FOLLOW THE REPORT AND
DISTRIBUTION IS REQUIRED, A SEPARATE REPORT DISTRIBUTION NUMBER AND
DOCUMENTATION SUPPORTING THE SAME WILL BE REQUIRED, IF NOT THE DISPLAY ITEM WILL
APPEAR AT THE END OF THE JCL LISTING.
CHANNEL 1 SKIPPING IS REQUIRED.
2. RPG. A 132 CHARACTER PRINT LINE MUST BE USED WITHIN THE PROGRAM (WHICH IS
EXPANDED TO 133 BY RPG). A LINE THAT HAS SPACE OR SKIP BEFORE CONTROL PRODUCES
TWO RECORDS; A LINE WITH SKIP OR SPACE AFTER CONTROL PRODUCES ONLY ONE RECORD.
BLOCKSIZE WITHIN THE PROGRAM MUST BE A MULTIPLE OF 133 CHARACTERS. RECFM
PARAMETER MUST EQUAL FBM.
3. ASSEMBLER. MACHINE CODE MUST BE USED FOR CARRIAGE CONTROL CHARACTERS.
RECFM PARAMETER MUST EQUAL FBM.
JCL CONSIDERATIONS: TO WRITE SYSOUT: THE DD STATEMENT CONTAINING THE SYSOUT
PARAMETER WOULD BE CHANGED FROM SYSOUT=A OR B TO THE FOLLOWING:
//DDNAME DD DSN=DSNAME,DISP=(NEW,CATLG,DELETE),UNIT=TAPE9,LABEL=(,SL),
// DCB=(RECFM=FBA,BLKSIZE=6650,LRECL=133)
//DDNAME DD DSN=DSNAME,DISP=(NEW,CATLG,DELETE),UNIT=TAPE9,LABEL=(,SL),
// DCB=(RECFM=FB,BLKSIZE=6400,LRECL=80)
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.04.02
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
DOCUMENTATION: A SEPARATE JOB AND SUPPORTING DOCUMENTATION WILL BE REQUIRED
FOR EACH STAND-ALONE APPLICATION USING THE UTILITY.
UTILITY CONTROL CARD: PRINT AND PUNCH VOLUME IS DETERMINED BY A CONTROL CARD.
START AND STOP IS IN LINES NOT TO EXCEED 90,000 LINES AND/OR 25,000 CARDS
TOTAL PER EXECUTION. ANY TWO DIGIT ASCENDING NUMBERS WILL BE ACCEPTED ON THE
CONTROL CARDS. PRINTING WILL STOP AT TOP OF PAGE INDICATED BY CHANNEL 1
CHARACTER.
CONTROL CARD FORMAT: COLUMN 1 2 - 8 9 - 15
BLANK START STOP
OPERATIONAL CONTROL: THE CONTROL PROGRAM WILL SET A RETURN CODE OF 666 AT END
OF FILE AND THE SECOND STEP OF THE UTILITY WILL DELETE THE CATALOGUED DATA SET.
FOR JOBS OF MORE THAN 100,000 LINES OR 25,000 CARDS: OPERATIONS WILL MONITOR
THE JOB AND ENSURE THAT ENTIRE FILE HAS BEEN PRINTED OR PUNCHED. THIS WILL BE
EFFECTED BY PRINTING OF THE STOP AND START LINES AND CARDS AT END OF EACH
EXECUTION OF THE UTILITY WHICH WILL BE MONITORED BY SCHEDULING.
USCPRINT/USCPUNCH PROC SPECIFICATIONS:
DSN - DATA SET NAME IN THE FORM 'FROD.F55030CA.T01' . (DSN MUST BE IN QUOTES)
FORMS - FOUR DIGIT FORMS NUMBER. DEFAULT IS 6141 FOR FORMS AND 9001 FOR
CARDS.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.04.03
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
EXAMPLES:
//C600014A JOB ETC
//C60010UA EXEC PROC=USCPRINT,DSN='C60050CW.T01',FORMS=6142
//SYSIN DD *
00000010100000
/*
//C600024A JOB ETC
//C60020UA EXEC PROC=USCPUNCH,DSN='C60050CW.C01',FORMS=9131
//SYSIN DD *
00000010025000
/*
CONTROL CARDS BEGIN IN COLUMN 2.
STEPS IN PROCEDURES:
THE PROCEDURES CONSISTS OF THE FOLLOWING STEPS:
USCPRINT
STEP PURPOSE
|
C60370CA |
PRINT PROGRAM |
|
C60940UA |
IEFBR14 TO UNCATALOG INPUT DATA SET |
|
USCPUNCH |
|
|
STEP |
PURPOSE |
|
C60380CA |
PUNCH PROGRAM |
|
C60940UA |
IEFBR14 TO UNCATALOG INPUT DATA SET |
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.05.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: MSSPRINT / MSSPUNCH
SEPARATE UTILITIES HAVE BEEN SET UP TO HANDLE PRINTING AND PUNCHING FROM A
MASS STORAGE DATASET. MSSPRINT MAY ALSO BE USED FOR NON-MASS STORAGE PRINT FILES
WHEN THE DATA SET IS TO REMAIN CATALOGUED AFTER PRINTING AND THE NUMBER OF PRINT
LINES MAY EXCEED 100,000. JCL CONVENTIONS ARE BASICALLY THE SAME AS THOSE FOR
USCPRINT AND USCPUNCH WITH SOME MINOR CHANGES.
A SEPARATE JOB AND SUPPORTING DOCUMENTATION WILL BE REQUIRED FOR EACH
STAND-ALONE APPLICATION USING THE UTILITY.
THE CONTROL PROGRAM IS THE SAME IN MSSPRINT AND MSSPUNCH AS THAT IN USCPRINT
AND USCPUNCH. THE EXCEPTION IN MSSPRINT IS THAT THE IEFBR14 HAS BEEN REMOVED
FROM THE PROC.
START AND STOP IS IN LINES NOT TO EXCEED 90,000 LINES AND/OR 25,000 CARDS
TOTAL PER EXECUTION. ANY TWO DIGIT ASCENDING NUMBERS WILL BE ACCEPTED ON THE
CONTROL CARDS. PRINTING WILL STOP AT TOP OF PAGE INDICATED BY CHANNEL 1
CHARACTER.
CONTROL CARD FORMAT: COLUMN 1 2 - 8 9 - 15
BLANK START STOP
MSSPRINT/MSSPUNCH PROC SPECIFICATIONS:
DSN = DSNAME IN FORM 'FPROD.F55030CA.M01.LV01' (MUST BE IN QUOTES)
FORMS = FOUR DIGIT FORMS NUMBER. DEFAULT IS 6141 FOR FORMS AND 9001 FOR
CARDS.
EXAMPLE:
//C600034A JOB ETC
//C60030UA EXEC PROC=MSSPRINT,DSN='CPROD.C60050CW.M01.LV01',
// FORMS=6143
//SYSIN DD *
00000010100000
/*
//C600044A JOB ETC
//C60040UA EXEC PROC=MSSPUNCH,DSN='CPROD.C40020CM.M01.NGDG',
// FORMS=9131
//SYSIN DD*
0000001025000
/*
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.06.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: CHECK DIGIT
HERE ARE TWO MODULUS 10 CHECK DIGIT ROUTINES AVAILABLE TO THE PROGRAMMERS.
THE TWO ROUTINES ARE SIMILAR IN THAT BOTH ARE INVOKED THRU CALL STATEMENTS AND
BOTH CALL STATEMENTS PASS TWO FIELDS TO THE SUBROUTINE.
THE TWO ROUTINES ARE CHKDIGIT WHICH VERIFIES THAT THE CHECK DIGIT IS CORRECT
FOR A NUMBER AND C61190CR WHICH COMPUTES A CHECK DIGIT FOR A NUMBER. EACH
ROUTINE ALSO RETURNS AN ERROR INDICATOR TO THE PROGRAM CALLING THE ROUTINE.
1. CHKDIGIT - CHKDIGIT IS A COBOL SUBROUTINE THAT WILL CHECK AN NUMBER AND
ITS ASSOCIATED CHECK DIGIT USING THE MODULUS 10 METHOD FOR CHECK DIGIT VALIDITY.
THE SENDING FIELD FOR THE NUMBER TO BE CHECKED FROM THE CALLING PROGRAM MUST
BE TEN DIGITS LONG. THE NUMBER, WITH THE CHECK DIGIT IN THE UNITS POSITION, IS
RIGHT ADJUSTED IN THE SENDING FIELD.
THE SUBROUTINE WILL PROCESS THE NUMBER AND RETURN A ONE DIGIT CODE INDICATING
THE FOLLOWING:
0 - CORRECT CHECK DIGIT
1 - MIXED MODE COMPARISON, INVALID CHECK DIGIT
2 - INCORRECT CHECK DIGIT
A STANDARD CALL STATEMENT USING TWO IDENTIFIERS IS REQUIRED TO EXECUTE THE
SUBROUTINE.
EXAMPLE:
CALL 'CHKDIGIT' USING SSN ERR.
THE VALUE CONTAINED IN SSN WILL BE PASSED TO THE SUBROUTINE AND A
NUMERIC INDICATOR WILL BE RETURNED IN THE ERR FIELD TO THE CALLING PROGRAM.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.06.02
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
2. C61190CR - C61190CR IS A COBOL SUBROUTINE THAT RECEIVES A NINE DIGIT
NUMBER, AND RETURNS EITHER A CHECK DIGIT USING THE MODULUS 10 METHOD OR AN 'E'
INDICATING THAT THE NUMBER WAS NOT NUMERIC. IF THE NUMBER TO BE CHECKED IS LESS
THAN NINE DIGITS IT SHOULD BE PADDED WITH LEADING ZEROS. THIS CHECKDIGIT ROUTINE
IS FULLY COMPATIBLE WITH THE IBM 3740 KEYDISK CHECK DIGIT FEATURE.
SPECIFICATIONS: THE SUBROUTINE IS INVOKED THRU THE USE OF A CALL STATEMENT.
THE CALL STATEMENT PASSES TWO FIELDS, A SENDING FIELD AND A RETURN FIELD, TO THE
SUBROUTINE. THE SENDING FIELD FOR THE NUMBER WHOSE CHECK DIGIT IS TO BE
CALCULATED MUST BE NINE DIGITS LONG. THE RETURN FIELD MUST BE DEFINED AS PICTURE
X. ALTHOUGH THE SUBROUTINE CHECKS THE NUMERIC VALIDITY OF THE NINE DIGIT FIELD,
IT WOULD BE BETTER TO PERFORM THIS CHECK BEFORE THE CALL FOR GREATER EFFICIENCY.
A STANDARD CALL STATEMENT USING TWO IDENTIFIERS IS REQUIRED TO EXECUTE THE
SUBROUTINE.
EXAMPLE:
CALL 'C61190CR' USING SENDING, RETURN
THE VALUE CONTAINED IN SENDING FIELD WILL BE PASSED TO THE SUBROUTINE AND A
CHECK DIGIT OR ERROR INDICATOR WILL BE RETURNED IN THE RETURN FIELD TO THE
CALLING PROGRAM.
IF THE RETURN FIELD CONTAINS AN 'E' AN ERROR OCCURRED WHILE TRYING TO
CALCULATE THE CHECK DIGIT. IF THE CALCULATION OF THE CHECK DIGIT WAS SUCCESSFUL,
THAT CHECK DIGIT WILL BE RETURNED IN THE RETURN FIELD.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.07.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 07/23/92
SUBJECT: USCSORT/USCSORP
USCSORT AND USCSORP ARE CATALOGUED PROCEDURES THAT ARE TO BE USED FOR SORTING
FILES THAT ARE RELATIVELY SMALL. BOTH UTILIZE THREE SORT WORK UNITS AND PROVIDE
DEFAULT SPACE OF TWO HUNDRED TRACKS PER WORK UNIT.
THE DEFAULT SPACE PROVIDED MAY BE OVER-RIDDEN BY CODING THE SPACE PARAMETER
ON THE EXEC STATEMENT. THE VALUE SPECIFIED IN THE SPACE PARAMETER INDICATES THE
NUMBER OF TRACKS PER WORK UNIT AND MUST NOT EXCEED 999.
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE USCSORT OR USCSORP IN A
JOB STEP IS AS FOLLOWS:
//STEPNAME EXEC PROC,SPACE=NNN
//SORT.SORTIN DD DSN=INPUTDSN
//SORT.SORTOUT DD DSN=OUTPUTDSN
//SORT.SYSIN DD *
SORT FIELDS=(START,LENGTH,FORMAT,ORDER)
/*
PROC = USCSORP - OUTPUT IS AUTOMATICALLY MICROFICHED USCSORT - OUTPUT IS NOT
AUTOMATICALLY MICROFICHED
NNN = THE AMOUNT OF SPACE PER WORK UNIT IN TRACKS NOT TO EXCEED 999 THE
NORMAL AMOUNT OF SORT WORK SPACE REQUIRED FOR A SORT STEP IS ONE THIRD OF THE
SPACE REQUIRED FOR THE ENTIRE FILE.
INPUTDSN = THE INPUT DATA SET NAME THAT IS TO BE SORTED
OUTPUTDSN = THE OUTPUT DATA SET NAME THAT IS TO CONTAIN THE SORTED OUTPUT
START = STARTING POSITION DISPLACEMENT OF FIRST SORT FIELD
LENGTH = LENGTH OF THE FIRST SORT FIELD
FORMAT = SORT FIELD DATA TYPE
CH = CHARACTER
BI = BINARY
ORDER = SORTING ORDER FOR FIRST SORT FIELD
A = ASCENDING
D = DESCENDING
MULTIPLE FIELDS MAY BE SPECIFIED, SUCH AS SORT
FIELDS=(STARTFLD1,LGTH1,CH,A,STARTFLD2,LGTH2,CH,A)
REFER TO THE SYNCSORT UTILITIES MANUAL FOR ADDITIONAL SORT SPECIFICATIONS AND
PARAMETERS.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.08.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 07/23/92
SUBJECT: BIGSORT/BIGSORP
BIGSORT AND BIGSORP ARE CATALOGUED PROCEDURES THAT ARE TO BE USED FOR SORTING
FILES THAT ARE MODERATE IN SIZE. BOTH UTILIZE THREE SORT WORK UNITS AND PROVIDE
DEFAULT SPACE OF ONE THOUSAND TRACKS PER WORK UNIT.
THE DEFAULT SPACE PROVIDED MAY BE OVER-RIDDEN BY CODING THE SPACE PARAMETER
ON THE EXEC STATEMENT. THE VALUE SPECIFIED IN THE SPACE PARAMETER INDICATES THE
NUMBER OF TRACKS PER WORK UNIT AND MUST NOT EXCEED 4999.
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE BIGSORT OR BIGSORP IN A
JOB STEP IS AS FOLLOWS:
//STEPNAME EXEC PROC,SPACE=NNN
//SORT.SORTIN DD DSN=INPUTDSN
//SORT.SORTOUT DD DSN=OUTPUTDSN
//SORT.SYSIN DD *
SORT FIELDS=(START,LENGTH,FORMAT,ORDER)
/*
PROC = BIGSORP - OUTPUT IS AUTOMATICALLY MICROFICHED
BIGSORT - OUTPUT IS NOT AUTOMATICALLY MICROFICHED
NNN = THE AMOUNT OF SPACE PER WORK UNIT IN TRACKS NOT TO EXCEED 4999. THE
NORMAL AMOUNT OF SORT WORK SPACE REQUIRED FOR A SORT STEP IS ONE THIRD OF THE
SPACE REQUIRED FOR THE ENTIRE FILE.
INPUTDSN = THE INPUT DATA SET NAME THAT IS TO BE SORTED
OUTPUTDSN = THE OUTPUT DATA SET NAME THAT IS TO CONTAIN THE SORTED OUTPUT
START = STARTING POSITION DISPLACEMENT OF FIRST SORT FIELD
LENGTH = LENGTH OF THE FIRST SORT FIELD
FORMAT = SORT FIELD DATA TYPE
CH = CHARACTER
BI = BINARY
ORDER = SORTING ORDER FOR FIRST SORT FIELD
A = ASCENDING
D = DESCENDING
MULTIPLE FIELDS MAY BE SPECIFIED, SUCH AS SORT
FIELDS=(STARTFLD1,LGTH1,CH,A,STARTFLD2,LGTH2,CH,A)
REFER TO THE SYNCSORT UTILITIES MANUAL FOR ADDITIONAL SORT SPECIFICATIONS AND
PARAMETERS.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.09.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 07/23/92
SUBJECT: LRGSORT/LRGSORP
LRGSORT AND LRGSORP ARE CATALOGUED PROCEDURES THAT ARE TO BE USED FOR SORTING
FILES THAT ARE MODERATE IN SIZE. BOTH UTILIZE THREE SORT WORK UNITS AND PROVIDE
DEFAULT SPACE OF FIVE THOUSAND TRACKS PER WORK UNIT. THESE PROCEDURES CONSIST OF
TWO STEPS. THE FIRST STEP, SORTVCHK, IS EXPLAINED IN STANDARDS SECTION NUMBER
5.5.13.01, AND THE SECOND STEP, SORT, REQUIRES DDNAME OVERRIDE STATEMENTS
DESCRIBED BELOW IN THE JCL.
THE DEFAULT SPACE PROVIDED MAY BE OVER-RIDDEN BY CODING THE SPACE PARAMETER
ON THE EXEC STATEMENT. THE VALUE SPECIFIED IN THE SPACE PARAMETER INDICATES THE
NUMBER OF TRACKS PER WORK UNIT AND MUST BE LARGER THAN 4999.
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE LRGSORT OR LRGSORP IN A
JOB STEP IS AS FOLLOWS:
//STEPNAME EXEC PROC,SPACE=NNN
//SORT.SORTIN DD DSN=INPUTDSN
//SORT.SORTOUT DD DSN=OUTPUTDSN
//SORT.SYSIN DD *
SORT FIELDS=(START,LENGTH,FORMAT,ORDER)
/*
PROC = LRGSORP - OUTPUT IS AUTOMATICALLY MICROFICHED
LRGSORT - OUTPUT IS NOT AUTOMATICALLY MICROFICHED
NNN = THE AMOUNT OF SPACE PER WORK UNIT IN TRACKS THAT IS GREATER THAN
4999. THE NORMAL AMOUNT OF SORT WORK SPACE REQUIRED FOR A SORT STEP IS ONE
THIRD OF THE SPACE REQUIRED FOR THE ENTIRE FILE.
INPUTDSN = THE INPUT DATA SET NAME THAT IS TO BE SORTED
OUTPUTDSN = THE OUTPUT DATA SET NAME THAT IS TO CONTAIN THE SORTED OUTPUT
START = STARTING POSITION DISPLACEMENT OF FIRST SORT FIELD
LENGTH = LENGTH OF THE FIRST SORT FIELD
FORMAT = SORT FIELD DATA TYPE
CH = CHARACTER
BI = BINARY
ORDER = SORTING ORDER FOR FIRST SORT FIELD
A = ASCENDING
D = DESCENDING
MULTIPLE FIELDS MAY BE SPECIFIED, SUCH AS SORT
FIELDS=(STARTFLD1,LGTH1,CH,A,STARTFLD2,LGTH2,CH,A)
REFER TO THE SYNCSORT UTILITIES MANUAL FOR ADDITIONAL SORT SPECIFICATIONS AND
PARAMETERS.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.10.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: CATLIST
CATLIST IS A CATALOGUED PROCEDURE THAT IS TO BE USED TO PRODUCE A LISTING OF
THE SYSTEM CATALOG. SELECTED DATASETS, DATASET PREFIXES, DATASET TYPES, SPECIFIC
VOLUMES, OR THE ENTIRE CATALOG MAY BE SELECTED. NORMALLY, THIS PROCEDURE TAKES
LESS THAN 30 CPU SECONDS AND LESS THAN 5,000 LINES OF OUTPUT.
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE CATLIST IN A JOB STEP IS
AS FOLLOWS:
//STEPNAME EXEC CATLIST,PARM='OPTIONS'
WHERE 'OPTIONS' MAY BE ONE OF THE FOLLOWING:
'DSN=XXXX' LIST CATALOGUED DATASETS, BEGINNING WITH 'XXXX'
'TYPE=DISK' LIST ONLY CATALOGUED DISK DATASETS
'TYPE=TAPE' LIST ONLY CATALOGUED TAPE DATASETS
'VOL=YYYYYY' LIST CATALOGUED DATASETS ON 'YYYYYY'
NOTE: THE PARM FIELD IS OMITTED IF AN ENTIRE LISTING IS DESIRED.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.11.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
SUBJECT: DSUTIL
DSUTIL IS A PROGRAM SPECIALLY DESIGNED FOR USE WITH THE IBM 3850 MASS STORAGE
SYSTEM. ITS FUNCTIONS CAN BE DIVIDED INTO THE FOLLOWING CATEGORIES:
1. CATALOG MANAGEMENT - EFFECT CHANGES TO THE SYSTEM CATALOG
2. DATA SET CONTROL - PROVIDE ABILITY TO DELETE, RENAME, LIST AND COPY USER
AND GROUP DATA
3. SECURITY CONTROL - CONTROL SECURITY STATUS CHANGE AND PERMIT ACCESS LEVELS
TO OTHER USERS.
4. DATA CYCLE ROTATION - AUTOMATICALLY CONTROL DATA SET RETENTION CYCLES BY
LEVEL OR DAYS. (NOT ACCEPTABLE FOR PRODUCTION DATA SETS; USE GENERATION DATA
GROUP (GDG) DATA SETS INSTEAD.)
5. SPACE MANAGEMENT - LIST SPACE USE BY VOLUME AND MSS GROUP
JOB CONTROL REQUIREMENTS
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE CATLIST IN A JOB STEP IS
AS FOLLOWS:
//STEPNAME EXEC DSUTIL
//SYSIN DD *
CONTROL STATEMENTS (BEGINNING IN COLUMN 2)
FUNCTION GUIDE
EACH OF THE CONTROL STATEMENTS IS COMPOSED OF A FUNCTION AND A SERIES OF
COMMANDS. A LIST OF THE AVAILABLE FUNCTIONS AND A BRIEF DESCRIPTION OF THE
PURPOSE OF EACH, IS AS FOLLOWS:
UNCTLG - REMOVE SYSTEM CATALOG ENTRY
CATALOG - ADD SYSTEM CATALOG ENTRY
LISTCAT - LIST CATALOG ENTRIES BY DEVICE, VOLUME OR DATA SET NAME
DELETE - REMOVE SYSTEM CATALOG ENTRY, SCRATCH VTOC ENTRY
RENAME - CHANGE THE DATA SET NAME
LISTDS - LIST A DATA SET IN DECIMAL OR HEX FORMAT, START, LIMIT OR SELECT
CRITERIA OPTIONAL
COPY - DUPLICATE THE DATA SET WITH A DIFFERENT NAME
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.11.02
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
STATUS - LIST OR CHANGE THE ACCESS LEVEL. ACCESS LEVELS ARE READ (READ ONLY),
UPDATE (READ OR WRITE), AND ALTER (SCRATCH OR RENAME). 'PUBLIC' OR 'NO PUBLIC'
ALLOW OR DENY UNIVERSAL ACCESS.
PERMIT - ALLOW OR DELETE ANOTHER USER'S ACCESS LEVEL TO YOUR DATA SET.
CYCLE - ROTATE A DATA SET CYCLE BASED ON A LEVEL OR DAYS PERIOD (NOT
ACCEPTABLE FOR PRODUCTION DATA SETS).
RETENTION - ENTER A DATA SET CYCLE
LISTR - LIST SPACE USAGE BY MSS GROUP
VOLMAP - LIST SPACE USAGE BY VOLUME
DSNMAP - LIST SPACE BY DATA SET
DSUTIL COMMANDS
|
UNCTLG |
DSN=DS NAME |
|
|
|
|
|
CATALOG |
DSN=DSNAME |
VOL=SERNUM |
DEVICE=DEVICE |
|
|
|
LISTCAT |
ALL |
LASTDSN= |
MSVGP= GGGGG |
|
|
|
|
DSN=DS NAME |
|
VOL= SERNUM |
|
|
|
|
|
|
DEVICE= DEVICE |
|
|
|
DELETE |
DSN=DSNAME |
VOL=SERNUM |
DEVICE= DEVICE |
|
|
|
RENAME |
DSN=DS NAME |
NEWDSN= |
VOL= SERNUM |
DEVICE= DEVICE |
|
|
LISTDS DSN = |
HEX |
EQ |
START= |
LIMIT= |
NOHEAD |
|
|
SELECT= |
NE LENGTH/LOCATION |
|
|
|
|
|
|
LT /CONSTANT |
|
|
|
|
|
|
GT |
|
|
NOHEAD |
|
COPY |
DSN= DSNAME |
NEWDSN= |
USER= USERID |
MSVGP= GGGGG |
|
|
STATUS |
DSN= DSNAME |
VOL= SERNUM LIST |
|
PUBLIC |
|
|
|
|
|
READ |
NOPUBLIC |
|
|
|
|
|
UPDATE |
|
|
|
|
|
|
ALTER |
|
|
CHAPTER: PROGRAMMING NUMBER: 5.5.11.03
DATE: 11/06/85
SECTION: UTILITIES REVISED: 11/06/87
|
PERMIT |
DSN=DSNAME |
VOL=SERNUM |
READ UPDATE ALTER DELETE |
USER=USERID |
|
CYCLE |
DSN=DSNAME |
LEVEL DAYS |
RESTORE |
|
|
RETENSION |
DSN=DSNAME |
LEVEL DAYS |
UPDATE DELETE |
HILVL |
|
LISTR |
OWNER= OOOOO DSN=DSNAME ALL |
|
|
|
|
GROUPMAP |
MSVGP=GGGGG ALL |
|
|
|
|
VOLMAP |
MSVGP=GGGGG VOL=SERNUM |
DSN=DSNAME |
DEVICE= DEVICE |
OWNER= |
|
DSNMAP |
DSN=DSNAME |
VOL=SERNUM |
DEVICE= DEVICE |
|
|
'DEVICE'= |
MSS 3330V |
3330 3330-1 3350
3380 |
T800 T1600 T6250 TAPED TAPE9 |
|
ALSO, MULTIPLE VOLUMES MAY BE SPECIFIED AS VOL=(N1,N2,...,N6)
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.12.01
DATE: 11/06/85
SECTION: UTILITIES REVISED: 07/30/87
SUBJECT: IDCAMS
IDCAMS IS AN IBM SERVICE PROGRAM WHICH MUST BE USED TO ESTABLISH AND MAINTAIN
GENERATION DATA GROUPS (GDGS). ALTHOUGH DSUTIL CAN STILL BE USED FOR MOST DATA
SET FUNCTIONS, IDCAMS MUST BE USED FOR THE FUNCTIONS PRESENTED BELOW. FOR A MORE
COMPLETE DESCRIPTION OF IDCAMS THAN THE ONE PRESENTED HERE, REFER TO IBM MANUAL
OS/VS2 ACCESS METHOD SERVICES (#GC26-3841).
JOB CONTROL LANGUAGE REQUIREMENTS
THE REQUIRED JCL TO EXECUTE THE CATALOGUED PROCEDURE CATLIST IN A JOB STEP IS
AS FOLLOWS:
//STEPNAME EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=A
//SYSIN DD *
CONTROL STATEMENTS
CONTROL CARD FORMAT
THE CONTROL CARD MARGINS ARE 2 AND 72. TO CONTINUE A COMMAND ON THE NEXT
CARD, A HYPHEN MUST BE THE LAST NON-BLANK CHARACTER BEFORE COLUMN 72. THE IDCAMS
CONTROL STATEMENTS DEFINE, DELETE AND LISTCAT ARE DESCRIBED ON THE PAGES THAT
FOLLOW.
I. DEFINE
PURPOSE: TO SPECIFY THE MANNER IN WHICH THE GDG WILL BE MAINTAINED.
PARAMETERS: NAME - THE DATA SET NAME OF THE GDG
LIMIT - THE NUMBER OF DATA SETS TO BE RETAINED
SCRATCH - DELETE THE DSCB FOR A DASD DATA SET WHICH IS DELETED.
EXAMPLE: DEFINE GDG (NAME (CPROD.C60590CA.M01) LIM (2) SCRATCH)
IN THIS EXAMPLE, THE GENERATION DATA GROUP CPROD.C60590CA.M01 WILL RETAIN THE
TWO MOST RECENTLY CREATED DATA SETS, AND WILL SCRATCH THE VTOC ENTRY FOR EACH
DASD DATA SET IN THE GROUP THAT IS DELETED.
NOTE 1: THE GDG (BASE RECORD) MUST BE DEFINED BEFORE CREATING GDG DATA SETS.
THE SCRATCH OPTION SHOULD BE SPECIFIED FOR ALL DASD DATA SETS.
NOTE 2: THE RESERVED WORD 'USCGDG' MUST ALSO BE SPECIFIED AS THE FIRST
SUB-PARAMETER OF THE JCL DCB WHEN CREATING THE DATA SET.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.12.02
DATE: 11/06/85
SECTION: UTILITIES REVISED: 12/10/92
II. DELETE
PURPOSE: TO DELETE ENTRIES OR THE ENTIRE GDG.
PARAMETERS: GDG - SPECIFIES THAT THE ENTRY TO BE DELETED IS A GENERATION DATA
GROUP.
TO DELETE AN ENTIRE GDG (BASE RECORD AND ALL ASSOCIATED DATA SETS), IDCAMS
MUST BE USED AS SHOWN BELOW.
DELETE CPROD.C60590CA.M01.*
DELETE CPROD.C60590CA.M01 GDG
THE FIRST DELETE STATEMENT ABOVE WILL DELETE ALL ASSOCIATED DATA SETS FOR
THE GDG DATA SET WITH THE BASE NAME CPROD.C60590CA.M01.
THE SECOND DELETE STATEMENT ABOVE WILL DELETE THE ACTUAL GDG BASE NAME FOR
DATA SET CPROD.C60590CA.M01.
NOTE, A SPECIFIC LEVEL OF A GDG MAY BE DELETED WITH IDCAMS, OR DSUTIL MAY BE
USED.
III. LISTCAT
PURPOSE: TO LIST ALL TYPES OF ENTRIES FOR THE GDG.
EXAMPLE: LISTCAT ENTRIES ('CPROD.C60590CA.M01') ALL
IN THE ABOVE EXAMPLE, ALL ENTRIES WILL BE LISTED FOR THE BASE RECORD AND ITS
ASSOCIATIONS (GDG DATA SETS). THE ENTRIES WILL INCLUDE HISTORY, NAME, AND VOLUME
INFORMATION.
NOTE: THE BASE ENTRY WILL CONTAIN THE LIMIT SPECIFIED AND THE SCRATCH OPTION.
DSUTIL'S LISTCAT WILL LIST THE ASSOCIATIONS OF THE GDG, BUT NOT THE BASE RECORD.
_E_&L0H_&A8L
CHAPTER: PROGRAMMING NUMBER: 5.5.13.01
DATE: 07/23/92
SECTION: UTILITIES REVISED: 11/08/93
SUBJECT: SORTVCHK
AN ADDITIONAL STEP, SORTVCHK, IS REQUIRED FOR ANY BATCH JOB WITH A PROGRAM
STEP USING AN INTERNAL SORT THAT REQUESTS SPACE ON THE SORT WORK VOLUMES -
WORK01, WORK02, OR WORK03. SORTVCHK IS TO BE INSERTED INTO THE JCL DIRECTLY IN
FRONT OF ANY SUCH PROGRAM STEP(S). SORTVCHK WILL ENSURE THAT THE REQUIRED SORT
SPACE IS AVAILABLE AND WILL NOT ALLOW THE REQUESTING PROGRAM STEP TO RUN UNTIL
THAT TIME. IF THE SPACE NEEDED IS NOT AVAILABLE, SORTVCHK WILL "WAIT"
FOR THE SPACE TO BECOME AVAILABLE (CHECKING EVERY 30 SECONDS). THIS FEATURE WILL
PREVENT JOB FAILURE BECAUSE OF AN "UNABLE TO ALLOCATE SPACE"
CONDITION.
THE REQUIRED JCL TO EXECUTE THIS STEP IS AS FOLLOWS:
//STEPNAME EXEC PGM=SORTVCHK,PARM='NNN'
//SORTVOL DD VOL=SER=WORK01,UNIT=SYSDA,DISP=OLD
NNN = THE AMOUNT OF SPACE PER SORT WORK UNIT IN TRACKS THAT IS BEING
REQUESTED IN THE FOLLOWING STEP.
A 'GENERIC' STEPNAME OF C00900UA HAS BEEN ASSIGNED AND MAY BE USED WITH
SORTVCHK.
SORTVCHK IS ALSO USED AS THE FIRST STEP IN THE CSD CATALOGUED PROCEDURES FOR
SORTING FILES, LRGSORT/LRGSORP (REFER TO STDS NUMBER 5.5.09.01).
|