PGM PARM(&MBR &LIBFIL)
MONMSG MSGID(CPF9815) EXEC(DO)
CHGVAR VAR(&TYP) VALUE('C')
GOTO CMDLBL(M1)
ENDDO
IF COND(&SRC *NE *NONE) THEN(CHGVAR +
VAR(%SST(&SWS 1 1)) VALUE('1'))
ELSE CMD(CHGVAR VAR(%SST(&SWS 1 1)) VALUE('0'))
CHGVAR VAR(&FIL1) VALUE(%SST(&LIBFIL 1 10))
CHGDTAARA DTAARA(*LDA (21 10)) VALUE(&FIL1)
CHGVAR VAR(&MES) VALUE('MEMBRE' *BCAT &M1 *BCAT 'DU +
FICHIER' *BCAT &FIL1 *BCAT 'DANS' *BCAT +
&L1 *BCAT 'INTROUVABLE')
SNDPGMMSG MSG(&MES) TOPGMQ(*PRV)
IF COND(%SST(&MSGDTA 31 1) *EQ '0') THEN(DO)
* ============================================== */
* Création d'un fichier de travail dans QTEMP */
* ============================================== */
PGM PARM(&TMP09A)
DCL VAR(&RTNLIB) TYPE(*CHAR) LEN(10)
DLTF FILE(QTEMP/TMP030Q0)
MONMSG MSGID(CPF0000)
RTVOBJD OBJ(TMP030Q0) OBJTYPE(*FILE) RTNLIB(&RTNLIB)
CRTDUPOBJ OBJ(TMP030Q0) FROMLIB(&RTNLIB) +
OBJTYPE(*FILE) TOLIB(QTEMP)
* =============================================== *
* Appel d'un programme avec un paramète en packed *
* =============================================== *
CALL PGM(TRE006) PARM(X'18123F' 'TST')
* ================================================ *
* Existence et mise à blanc d'un fichier *
* ================================================ *
CHKOBJ OBJ(&LIBL/SODUNIP0) OBJTYPE(*FILE)
MONMSG MSGID(CPF0000) EXEC(DO)
CHGDTAARA DTAARA(&LIBL/INTSODD (17 4)) +
VALUE('KO2 ')
GOTO FIN
ENDDO
CLRPFM FILE(&LIBL/SODUNIP0)
FIN:
* ================================= *
* Comptage de ligne dans un fichier *
* ================================= *
RTVMBRD FILE(&LIBL/SODUNIP0) NBRCURRCD(&RCDS)
* ================================= *
* Remise à blanc du SFL message *
* ================================= *
PGM PARM(&WPGM)
DCL VAR(&WPGM) TYPE(*CHAR) LEN(10)
RMVMSG PGMQ(*SAME (&WPGM)) CLEAR(*ALL)
ENDPGM
* ================================= *
* Exemple de commande CPYFFRMIMPF *
* ================================= *
CPYFRMIMPF FROMSTMF(&SRC1) TOFILE(&BIB/&FIC) +
MBROPT(*REPLACE) RCDDLM(*CRLF) +
STRDLM(*NONE) FLDDLM(';') +
ERRRCDOPT(*REPLACE) RPLNULLVAL(*FLDDFT)
* ============================================= *
* Exemple d'extraction dans un membre fichier *
* ============================================= *
DCL VAR(&MBRN) TYPE(*CHAR) LEN(8)
DCL VAR(&USER) TYPE(*CHAR) LEN(10)
RTVJOBA JOB(&JOB) USER(&USER) NBR(&NBR) TYPE(&TYPE)
/* Sortie fichier des Contrats Achats Fournisseur */
CHGVAR VAR(&MBRN) VALUE('CMP' *CAT %SST(&USER 1 6))
CHKOBJ OBJ(ZCMPACH) OBJTYPE(*FILE) MBR(&MBRN)
MONMSG MSGID(CPF9815) EXEC(ADDPFM FILE(ZCMPACH) + MBR(&MBRN))
OVRDBF FILE(ZCMPACH) TOFILE(ZCMPACH) MBR(&MBRN)
CLRPFM FILE(ZCMPACH) MBR(&MBRN)
/* Call list program */
CALL PGM(ZZI021)