Our users can send reports to any printer on the system on demand. Pressing the attention key from any program or menu displays our office productivity menu, which has an option to select printers. When the user selects this option, program CHGPRTRCL (1) is called to retrieve the printers from the system and put the list in a file with the DSPOBJD command. The nice thing about this is that the object text is also put in the file. Therefore, the description of the printer is available to be displayed and the users can then identify where the printer is.
Our users can send reports to any printer on the system on demand. Pressing the attention key from any program or menu displays our office productivity menu, which has an option to select printers. When the user selects this option, program CHGPRTRCL (Figure 1) is called to retrieve the printers from the system and put the list in a file with the DSPOBJD command. The nice thing about this is that the object text is also put in the file. Therefore, the description of the printer is available to be displayed and the users can then identify where the printer is.
Program CHGPRTRRG (2) is then called which displays the printers (based on our naming conventions) in a subfile display, CHGPRTRDF (3). The users can place an 'X' beside the printer they wish to use. When the user exits the program, the CHGJOB command is executed using the selected printer name as the new OUTQ.
Program CHGPRTRRG (Figure 2) is then called which displays the printers (based on our naming conventions) in a subfile display, CHGPRTRDF (Figure 3). The users can place an 'X' beside the printer they wish to use. When the user exits the program, the CHGJOB command is executed using the selected printer name as the new OUTQ.
Note: This program gives you the ability to change your output only to an OUTQ with a corresponding printer of the same name.
Bruce Knoll Kentwood, Michigan
TechTalk: Printing Anywhere on Demand
Figure 1 CL program CHGPRTRCL
CHGPRTRCL: + PGM DCL VAR(&OUTQ) TYPE(*CHAR) LEN(10) DSPOBJD OBJ(QUSRSYS/*ALL) OBJTYPE(*OUTQ) OUTPUT(*OUTFILE) + OUTFILE(TEMPOUTQ) OUTMBR(*FIRST *REPLACE) MONMSG MSGID(CPF9860) RTVJOBA OUTQ(&OUTQ) OVRDSPF FILE(CHGPRTR) TOFILE(CHGPRTRDF) CALL PGM(CHGPRTRPG) PARM(&OUTQ) DLTOVR FILE(CHGPRTR) CHGJOB JOB(*) OUTQ(&OUTQ) ENDPGM
TechTalk: Printing Anywhere on Demand
Figure 2 RPG program CHGPRTRRG
H FTEMPOUTQIF F 382 DISK FCHGPRTR CF E WORKSTN F KNUM 1 F SFLINEKSFILE SFLRCD ITEMPOUTQAA I 24 24 PRT1 I 24 33 PRTID I 59 108 PRTDSC C *ENTRY PLIST C PARM PRINT 10 C* C MOVE PRINT SCPRT C EXSR SUB1 C WRITEFKEYS C EXFMTSFLCTL C* C *INKC DOWEQ'0' C *IN98 DOUEQ'1' C READCSFLRCD 98 C *IN98 IFEQ '0' C MOVE *BLANK SFSEL C UPDATSFLRCD C MOVE SFPRT SCPRT C SETON 98 C MOVE SCPRT PRINT C END C END C WRITEFKEYS C EXFMTSFLCTL C END C SETON LR C* C SUB1 BEGSR C Z-ADD1 SFLINE 30 C READ TEMPOUTQ 99 C *IN99 DOWEQ'0' C PRT1 IFEQ 'P' C PRT1 OREQ 'Q' C MOVE PRTID SFPRT C MOVE PRTDSC SFDSC C WRITESFLRCD C ADD 1 SFLINE C END C READ TEMPOUTQ 99 C END C ENDSR
TechTalk: Printing Anywhere on Demand
Figure 3 Display file CHGPRTRDF
A* 90/09/06 13:09:44 ERNIE REL-R02M00 5728-PW1 A DSPSIZ(24 80 *DS3) A PRINT A INVITE A CF03 A R SFLRCD SFL A* 90/09/06 11:38:35 ERNIE REL-R02M00 5728-PW1 A SFSEL 1A I 5 4 A SFPRT 10A O 5 11 A SFDSC 50A O 5 27 A R SFLCTL SFLCTL(SFLRCD) A* 90/09/06 13:09:44 ERNIE REL-R02M00 5728-PW1 A SFLSIZ(0036) A SFLPAG(0018) A OVERLAY A 52 PUTOVR A N51 SFLDSP A N51 SFLDSPCTL A N51 SFLEND A 1 27'SELECT PRINTER OUTPUT QUEUE' A DSPATR(HI) A 1 63DATE A EDTCDE(Y) A 1 73TIME A 2 24'Current output queue:' A SCPRT 10A O 2 47OVRDTA A 3 3'(X)' A 4 2'Select' A DSPATR(HI) A 4 11'Printer Outq' A DSPATR(HI) A 4 27'Output Queue Description' A DSPATR(HI) A R FKEYS A* 90/09/06 11:28:58 ERNIE REL-R02M00 5728-PW1 A LOCK A CLRL(*NO) A OVERLAY A 23 2'F3=Exit Roll Enter=Change prin- A ter'
Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.
IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn:
LATEST COMMENTS
MC Press Online