歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 可以刪除一個lib下所有文件的cl程序

可以刪除一個lib下所有文件的cl程序

日期:2017/2/27 9:33:20   编辑:更多Linux

最近在做報表查詢程序。每次查詢結果都生成臨時文件在一個lib下。

程序中沒控制查詢完畢清除臨時文件。所以想辦法做了個cl程序加入作業調度裡凌晨清除文件。

程序:

PGM

/*endpf 這個文件事先CRTPF,我指定長度300就可以了 */

DCLF FILE(SBGL/ENDPF)

DCL VAR(&PFNAME) TYPE(*CHAR) LEN(10)

DCL VAR(&LEIXIN) TYPE(*CHAR) LEN(4)

DCL VAR(&SHUXIN) TYPE(*CHAR) LEN(2)

/*這裡dsplib cl 命令 參數 output(*print) 生成spool file */

DSPLIB LIB(TEMPPF) OUTPUT(*PRINT)

/*先清除一下儲存spool file信息的pf */

CLRPFM FILE(ENDPF)

/* 將DSPLIB LIB(TEMPPF) 生成的信息,也就是參數output(*)時在屏幕上顯示的信息 cpy到endpf中*/

CPYSPLF FILE(QPDSPLIB) TOFILE(SBGL/ENDPF) +

CRTDATE(*LAST)

/*循環讀取 */

BEGIN: RCVF RCDFMT(ENDPF)

MONMSG MSGID(CPF0864) EXEC(GOTO CMDLBL(END))

/*將每行信息存到本地數據區中 */

CHGDTAARA DTAARA(*LDA) VALUE(&ENDPF)

/*截取數據區相應的部分 ,這再不同應用中位置肯定不一樣的……,所以,確定位置時,debug一下,在上一步結束時,dspdtaara,然後……數吧*/

/*想獲取的信息定義好…… */

RTVDTAARA DTAARA(*LDA (5 10)) RTNVAR(&PFNAME)

RTVDTAARA DTAARA(*LDA (18 4)) RTNVAR(&LEIXIN)

RTVDTAARA DTAARA(*LDA (27 2)) RTNVAR(&SHUXIN)

/*如果類型是 *file …… */

IF COND(&LEIXIN = 'FILE') THEN(DO)

DLTF FILE(TEMPPF/&PFNAME)

ENDDO

GOTO CMDLBL(BEGIN)

END: ENDPGM

看到以前的帖子 :

http://bbs.chinaunix.net/viewthr …… F9%D3%D0&page=1

感覺這種將各種cl 命令得到的結果"導"出來,再……很實用的。應該改改程序就可以實現其它效果的。

創建物理文件 (CRTPF)

入選擇,並按“執行”鍵。

件 . . . . . . . . . . . . . FILE

庫 . . . . . . . . . . . . . *CURLIB

文件 . . . . . . . . . . . . SRCFILE QDDSSRC

庫 . . . . . . . . . . . . . *LIBL

成員 . . . . . . . . . . . . SRCMBR *FILE

錄長度,如果沒有 DDS . . . . RCDLEN 300 /*CRTPF ENDPF */

成嚴重性級別 . . . . . . . . GENLVL 20

記嚴重性級別 . . . . . . . . FLAG 0

件類型 . . . . . . . . . . . FILETYPE *DATA

員(如果需要的話) . . . . . MBR *FILE

戶指定的 DBCS 數據 . . . . . IGCDTA *NO

本描述 . . . . . . . . . . . TEXT *SRCMBRTXT


[1]

成嚴重性級別 . . . . . . . . GENLVL 20

記嚴重性級別 . . . . . . . . FLAG 0

件類型 . . . . . . . . . . . FILETYPE *DATA

員(如果需要的話) . . . . . MBR *FILE

戶指定的 DBCS 數據 . . . . . IGCDTA *NO

本描述 . . . . . . . . . . . TEXT *SRCMBRTXT



Copyright © Linux教程網 All Rights Reserved