Giriş-Çıkış Yöntemleri

Bir JCL aracılığıyla yürütülen herhangi bir toplu iş programı, işlenen ve bir çıktı oluşturulan veri girişi gerektirir. Programa girdi beslemek ve bir JCL'den alınan çıktıyı yazmak için farklı yöntemler vardır. Toplu modda, kullanıcı etkileşimi gerekmez, ancak giriş ve çıkış cihazları ve gerekli organizasyon JCL'de tanımlanır ve gönderilir.

Bir JCL'de Veri Girişi

Verileri JCL kullanarak bir programa beslemenin çeşitli yolları vardır ve bu yöntemler aşağıda açıklanmıştır:

INSTREAM DATA

Bir programa akış içi veri, bir SYSIN DD deyimi kullanılarak belirtilebilir.

//CONCATEX JOB CLASS=6,NOTIFY=&SYSUID
//* Example 1:
//STEP10 EXEC PGM=MYPROG
//IN1    DD DSN=SAMPLE.INPUT1,DISP=SHR
//OUT1   DD DSN=SAMPLE.OUTPUT1,DISP=(,CATLG,DELETE),
//       LRECL=50,RECFM=FB
//SYSIN  DD *
//CUST1  1000
//CUST2  1001
/*
//*
//* Example 2:
//STEP20 EXEC PGM=MYPROG
//OUT1   DD DSN=SAMPLE.OUTPUT2,DISP=(,CATLG,DELETE),
//       LRECL=50,RECFM=FB
//SYSIN  DD DSN=SAMPLE.SYSIN.DATA,DISP=SHR
//*

Örnek 1'de, MYPROG'a giriş SYSIN'den geçirilir. Veriler JCL içinde sağlanır. Programa iki veri kaydı aktarılır. Lütfen / * öğesinin yayın içi SYSIN verilerinin sonunu işaret ettiğini unutmayın.

"CUST1 1000" kayıt1 ve "CUST2 1001" kayıt2'dir. Veri okunurken / * sembolü ile karşılaşıldığında veri sonu koşulu karşılanır.

Örnek 2'de, SYSIN verileri bir veri kümesinde tutulur; burada NUMUNE.SYSIN.DATA, bir veya daha fazla veri kaydını tutabilen bir PS dosyasıdır.

Dosyalar aracılığıyla Veri Girişi

Önceki bölümlerdeki örneklerin çoğunda bahsedildiği gibi, bir programa veri girişi PS, VSAM veya GDG dosyalarıyla, ilgili DSN adı ve DISP parametrelerinin yanı sıra DD ifadeleri ile sağlanabilir.

Örnek 1'de, SAMPLE.INPUT1, verilerin MYPROG'a iletildiği girdi dosyasıdır. Program içerisinde IN1 olarak anılır.

Bir JCL'de Veri Çıkışı

Bir JCL'deki çıktı, bir veri kümesinde kataloglanabilir veya SYSOUT'a aktarılabilir. DD ifadeleri bölümünde bahsedildiği gibi,SYSOUT=* çıktıyı JOB deyiminin MSGCLASS parametresinde belirtilenle aynı sınıfa yönlendirir.

İş Günlüklerini Kaydetme

Belirtme MSGCLASS=Yiş günlüğünü JMR'ye (Joblog Management and Retrieval) kaydeder. Tüm İŞ günlüğü, SPOOL'a yeniden yönlendirilebilir ve SPOOL'daki iş adına karşı XDC komutu verilerek bir veri kümesine kaydedilebilir. SPOOL'da XDC komutu verildiğinde, bir veri kümesi oluşturma ekranı açılır. İş günlüğü daha sonra uygun PS veya PDS tanımı verilerek kaydedilebilir.

İş günlükleri, SYSOUT ve SYSPRINT için önceden oluşturulmuş bir veri kümesinden bahsedilerek bir veri kümesine de kaydedilebilir. Ancak, JMR veya XDC'de yapıldığı gibi iş günlüğünün tamamı bu yolla yakalanamaz (yani, JESMSG kataloğa alınmayacaktır).

//SAMPINST JOB 1,CLASS=6,MSGCLASS=Y,NOTIFY=&SYSUID
//*
//STEP1    EXEC PGM=MYPROG
//IN1      DD DSN=MYDATA.URMI.INPUT,DISP=SHR
//OUT1     DD SYSOUT=*
//SYSOUT   DD DSN=MYDATA.URMI.SYSOUT,DISP=SHR
//SYSPRINT DD DSN=MYDATA.URMI.SYSPRINT,DISP=SHR
//SYSIN    DD MYDATA.BASE.LIB1(DATA1),DISP=SHR
//*
//STEP2    EXEC PGM=SORT

Yukarıdaki örnekte, SYSOUT MYDATA.URMI.SYSOUT ve SYSPRINT içinde MYDATA.URMI.SYSPRINT içinde kataloglanmıştır.