Programme CL de (re)démarrage d’une imprimante

100 /**************************************************************************/
200 /* PROJET : GESTION COMMERCIALE */
300 /* PROGRAMME : STRPRTCL */
400 /* FONCTION : DEMARRAGE IMPRIMANTE AVEC TEST PREALABLE DE L'ETAT */
500 /* DU DEVICE (MISE HORS PUIS EN FONCTION SI EN ERREUR) */
900 /* PARAMETRES : */
1000 /* &PRINTER ---> IMPRIMANTE 10 */
1200 /**************************************************************************/
1300 /* IMPORTANT : APRES COMPILATION, EXECUTER LA COMMANDE SUIVANTE */
1400 /* CHGPGM PGM(STRPRTCL) USRPRF(*OWNER) */
1500 /* (PERMETTRA AUX UTILISATEURS D'ACCEDER A LA COMMANDE VRYCFG) */
1600 /**************************************************************************/
1700 PGM PARM(&PRINTER)
1800
1900 DCL VAR(&PRINTER) TYPE(*CHAR) LEN(10)
2000 DCL VAR(&CODERR) TYPE(*DEC) LEN(5 0)
2100 DCL VAR(&MSG) TYPE(*CHAR) LEN(80)
2200
2300 CHGVAR VAR(&MSG) VALUE('Démarrage en cours de +
2400 l''imprimante ' *CAT &PRINTER)
2500 SNDPGMMSG MSGID(CPF9897) MSGF(QSYS/QCPFMSG) +
2600 MSGDTA(&MSG) TOPGMQ(*EXT) MSGTYPE(*STATUS)
2700
2800 /* RECUPERATION ETAT DE LA CONFIGURATION */
2900 RTVCFGSTS CFGD(&PRINTER) CFGTYPE(*DEV) STSCDE(&CODERR)
3000
3100 /* ARRET DE L'EDITEUR SI EN ERREUR */
3200 IF COND(&CODERR *EQ 106) THEN(DO)
3300 ENDWTR WTR(&PRINTER) OPTION(*IMMED)
3400 MONMSG MSGID(CPF3313)
3500 DLYJOB DLY(5)
3600 VRYCFG CFGOBJ(&PRINTER) CFGTYPE(*DEV) STATUS(*OFF)
3700 VRYCFG CFGOBJ(&PRINTER) CFGTYPE(*DEV) STATUS(*ON) +
3800 RESET(*YES)
3900 ENDDO
4000
4100 /* REDEMARRAGE DE L'IMPRIMANTE EN ERREUR */
4200 IF COND(&CODERR *EQ 100) THEN(DO)
4300 VRYCFG CFGOBJ(&PRINTER) CFGTYPE(*DEV) STATUS(*OFF)
4400 VRYCFG CFGOBJ(&PRINTER) CFGTYPE(*DEV) STATUS(*ON) +
4500 RESET(*YES)
4600 ENDDO
4700
4800 /* REDEMARRAGE DE L'IMPRIMANTE HORS FONCTION */
4900 IF COND(&CODERR *EQ 0) THEN(DO)
5000 VRYCFG CFGOBJ(&PRINTER) CFGTYPE(*DEV) STATUS(*ON) +
5100 RESET(*YES)
5200 ENDDO
5300
5400 /* REDEMARRAGE EDITEUR IMPRIMANTE */
5500 STRPRTWTR DEV(&PRINTER)
5600 MONMSG MSGID(CPF3310)
5700
5800
5900 CHGVAR VAR(&MSG) VALUE('Imprimante ' *CAT &PRINTER +
6000 *TCAT ' démarrée')
6100 SNDPGMMSG MSGID(CPF9897) MSGF(QSYS/QCPFMSG) +
6200 MSGDTA(&MSG) TOPGMQ(*EXT) MSGTYPE(*STATUS)
6300
6400 FIN: ENDPGM

Print Friendly, PDF & Email