Job Control Language

Job Control Language (JCL) – język opisu zadań, jest zbiorem wyrażeń (poleceń), które są przekazywane do systemu, aby wykonać program, podążając według pewnych instrukcji wyjściowych i wejściowych. Takie wyrażenia przekazują systemowi, gdzie znajdują się odpowiednie wejścia i jak należy przetworzyć owo wejście (uruchomienie programu) i co z rezultatem działania programu. Job pozwala na wykonanie zadania (zadań) w tle pracy systemu.

Wyrażenia

Występuje 18 klas wyrażeń dla JCL: JOB, EXEC, DD, PROC, PEND, COMMENT, NULL, DELIMITER, OUTPUT, JCL COMMAND (obsługiwany przez JES2), CNTL, ENDCNTL, COMMAND, IF/THEN/ELSE/ENDIF, INCLUDE, JCLLIB, SET, XMIT (obsługiwany przez JES3).

Najważniejszymi wyrażeniami z powyższych klas są: JOB, EXEC, DD.

  • JOB - to wyrażenie musi znajdować się na początku każdego job i określa przetwarzane informacje. Przykład użycia wyrażenia JOB:
//jobname JOB positionals,keywords

----

//MOJJOB1 JOB (ACCT),'USER.U',CLASS=A

Inne parametry, które może przyjmować wyrażenie JOB: REGION, NOTIFY, USER, TYPRUN, CLASS, MSGCLASS, MSGLEVEL.

  • EXEC (EXECUTE) - to wyrażenie musi występować na początku każdego step, definiuje, jaki program lub procedurę należy uruchomić, dostarcza parametrów. W każdym job może znajdować się maksymalnie 255 step.
//stepname EXEC positional,keywords

----

//STEP1 EXEC PGM=(executable program name or a JCL procedure name(PROC=))
  • DD (Data Description) - wyrażenie opisujące wejścia/wyjścia (input/output) data sets i ich własności. Wyrażenie DD zazwyczaj występuje po wyrażeniu EXEC.
//ddname DD ...

----

//INDD1 DD ...
//OUTDD1 DD ...

Jobname, stepname, ddname powinny być unikatowe, maksymalna długość wynosi 8 znaków, positional i keyword są to parametry. Przykładowy fragment zadania wykorzystujący powyższe wyrażenia:

 000100 //MOJJOB1 JOB NOTIFY=&SYSUID,CLASS=A
 000110 //STEP1 EXEC PGM=IEFBER14
 000120 //DD1 DD DSN=TEST.ALOTEST1.PDS,DISP=(NEW,CATLG,CATLG),
 000130 //  LIKE=TEST.ALOTEST.PDS
...

Podstawowe zasady kodyfikacji w JCL

  • Wyrażenia JCl zaczynają się w 1 kolumnie i poprzedzone są // na początku linii.
  • Linie komentarzy rozpoczynają się od //*
  • Od 1 do 71 kolumny umieszczamy kod
  • Przecinek na końcu wyrażenia świadczy o kontynuacji poprzedniej linii, kontynuacja musi się zaczynać pomiędzy 4 a 16 kolumną
  • W przypadku gdy na początku linii tylko występuje // świadczy to o końcu zadania

Narzędzia JCL

JCl korzysta z pewnych narzędzi, które wspomagają przetwarzanie danych. Narzędzia te pozwalają na kopiowanie, tworzenie, usuwanie zestawów danych oraz wykonywanie na nich wszelkich operacji, dzieli się je na narzędzia systemowe i zestawów danych.

Narzędzia systemowe

  • ICKDSF
  • IEHINITT
  • IEHLIST
  • IEHMOVE
  • IEHPROGM

Narzędzia zestawów danych

  • IDCAMS
  • IEBCOMPR
  • IEBCOPY
  • IEBDG
  • IEBEDIT
  • IEBGENER
  • IEBIMAGE
  • IEBISAM
  • IEBPTPCH
  • IEBUPDTE
  • IEFBR14

Linki zewnętrzne

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
Kembali kehalaman sebelumnya