JCL 1 Alokowanie wsadowe data seta PDSE
© Copyright by Oskar Grot
JCL - Alokowanie data seta PDSE - wsadowe PDSE jest partycjonowanym (data setem) zbiorem danych rozszerzonym. Składa się z katalogu i zera lub więcej membrów podobnie jak PDS. MoŜe być stworzony za pomocą JCL TSO/E lub ISPF-a. UŜywa takich samych metod dostępu jak PDS. Katalogi są wypakowywane automatycznie według potrzeb. Górny limit membrów to 524,286. Miejsce po usuniętych lub przeniesionych membrach jest automatycznie wykorzystywany przez inny member, więc nie musimy bawić się w kompresowanie tego rodzaju data setów aby usunąć marnowane miejsce. KaŜdy z membrów data seta PDSE moŜe mieć do 15,728,639 rekordów. Mamy tu przykładowy skrypt JCL alokujący wsadowo zbiór danych.
ID uŜytkownika etykieta
Nazwisko programisty
słowo zawsze obecne
przecinek przenosi rekord do następnej linii
//RQRIJOJB JOB,‘RIO JOSEPH’,
tzw. ACCT Account information
Klasa - nazwa kolejki wykonawczej (A-Z i 0-9) (MoŜna opuścić wartość domyślna)
//
Klasa kolejki wyjściowej tam gdzie wysyłane są zbiory SYSOUT=* (np. komunikaty JES) (istnieją wartości domyślne)
Przydzielona pamięć RAM dostępna dla JOB-a. (w tym przypadku 0 oznacza maksimum)
CLASS=A,MSGCLASS=Z,REGION=0M,NOTIFY=&SYSUID
Powiadamia odpowiedniego uŜytkownika o zakończeniu JOB-a. W tym przypadku tego który submitował JOB-a
//* Nazwa kroku pracy
//STEP1
Uruchamia program lub procedurę
EXEC PGM=IEFBR14
Uruchamia program Program nie wykonuje Ŝadnej akcji oprócz zwracania kodu zakończenia „0”, jednakŜe uruchomienie tego narzędzia wywołuje inne komponenty systemu wykonujące uŜyteczne zadania. Na przykład uruchamiając pracę komendą „SUBMIT” i uruchamiając IEFBR14 powodujemy sprawdzenie pracy pod względem składniowym. Jeśli kod JCL w zdaniu DD zawiera inicjator z/OS przydzieli miejsce dla nowych data setów i przeprowadzi dyspozycje dla procesów.
//***********************************************************
wskazanie spoola jako miejsca wydruków systemowych
Kieruje wydruki systemowe
//SYSPRINT DD SYSOUT=*
Definiuje tworzony plik wejściowy Data Set Name Definiujemy nazwę data seta (definiuję nazwę zbioru)
//SYSIN
Identyfikator uŜytkownika
DD DSN=XXXX.JCLTEST.RIJO.PDSE,
Nazwa data seta Dyspozycja dla pliku.
//
Obecny status data seta
DISP=(NEW,CATLG,DELETE), Dyspozycja - co się będzie działo z data setem po poprawnym zakończeniu
Dyspozycja - co się będzie działo z data setem po niewłaściwym zakończeniu
Specyfikuje jaki ma być data set PDS lub PDSE
//
Specyfikuje data seta jako PDSE w przypadku PDS byłoby DSNTYPE=PDS.
DSNTYPE=LIBRARY, Wyszczególnia adres urządzenia przydzielonego w środowisku, jednostkę, wolumen, taśmy, dyski itd.
//
UNIT=TESTDA,
Przydziela miejsce dla dataseta. Jednostki w jakich moŜemy alokować miejsce dla data seta to (Cylinders/Tracks/Blocks), (CYL,(primary,secondary,directory),
//
SPACE=(CYL,(10,10,10)), określa strukturę logiczną zbioru
//
//
określa format rekordu
określa długość rekordu danych
DCB=(RECFM=FB,RLECL=80,BLKSIZE=800) określa rozmiar bloku (wynika z ilości rekordów w bloku)