2012-11-08 54 views
-1

我需要在月份的第一個工作日上運行一項工作,並在月末結束工作中使用月末結賬(上個月)的會計數據。我希望每個月都能運行相同的工作,而不需要操作員干預,並在數據集名稱中包含結束月份和年份,以便可以輕鬆識別數據集關閉期間的結束時間。目前運行8個獨立的工作來完成這項任務。請提供具體的JCL樣本。數據集名稱中上一個月 - 年的JCL

+0

加入當前工作的例子,讓我們看看你想做什麼?您是自己提交批處理作業還是計劃安排?大多數調度程序都有某種形式的變量,可讓您使用算術和工作日生成所需的日期 – Deuian

回答

0

這樣做的最好的解決辦法是使用你的作業調度的功能。話雖如此......

Here是EZACFSM1更新的參考。 OS/390 2.10在十多年前並不是最新的。

但是,您不能僅使用此實用程序來創建名稱中包含日期/時間信息的數據集。 EZACFSM1只是從SYSIN讀取並寫入SYSOUT,解釋它讀取的系統符號。

您可以使用EZACFSM1爲IDCAMS編寫ALTER語句,將靜態命名的數據集(沒有年份和月份的數據集)重命名爲具有這些屬性的數據集。它確實需要兩個額外的步驟,並提出警告。

//CATLG EXEC PGM=IEFBR14 
//DD01  DD DISP=(NEW,CATLG), 
//    DSN=STUFF, 
//    AVGREC=U, 
//    LRECL=80, 
//    RECFM=FB, 
//    SPACE=(80,(1000,100)) 
//* 
//MKALTER EXEC PGM=EZACFSM1 
//SYSOUT DD DISP=(NEW,PASS), 
//    AVGREC=U, 
//    LRECL=80, 
//    RECFM=FB, 
//    SPACE=(80,(1000,100)) 
//SYSIN DD * 
ALTER STUFF NEWNAME(STUFF.Y&YR4&MON) 
//* 
//RENAME EXEC PGM=IDCAMS 
//SYSIN DD DISP=(OLD,PASS),DSN=*.MKALTER.SYSOUT 
//SYSPRINT DD SYSOUT=* 
//* 

該警告與工作安排有關。假設你的工作在本月的最後一天延遲。如果它長時間處於輸入隊列中,它將在下個月的第一天運行,使ALTER不正確。

相關問題