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.