This is the RPG program for writing a Print Report using DDS. At the bottom, you will see a sample of the report layout in the spool file.
Columns . . . : 6 76 Edit USER000/QRPGLESRC SEU==> TUTR008 FMT FX FFilename++IPEASF.....L.....A.Device+.Keywords+++++++++++++++++++++++++ *************** Beginning of data ************************************* 0001.00 FCUST IF E DISK 0002.00 * The AS/400 includes a pre-defined printer file named QPRINT 0003.00 * Here, I use indicator 10 as the overflow indicator 0004.00 * That means that *IN10 will be *ON when the printed page 0005.00 * is full. 0006.00 FCUSW007 O E PRINTER OFLIND(*In10) 0007.00 *---------------------------------------------------------------- 0008.00 C* Print the heading 0009.00 C Write Hdg1 0010.00 C Write Hdg2 0011.00 C Write Hdg3 0012.00 C* Read the first record 0013.00 C Read CSREC 90 0014.00 C* 0015.00 C DoW *In90 = *Off 0016.00 C* See if the page is full. If so, print the heading. 0017.00 C If *In10 = *On 0018.00 C Write Hdg1 0019.00 C Write Hdg2 0020.00 C Write Hdg3 0021.00 C Eval *In10 = *Off 0022.00 C EndIf 0023.00 C Write Detail 0024.00 C Read CSREC 90 0025.00 C EndDo 0026.00 C* 0027.00 C Eval *InLR = *On 0028.00 C Return ****************** End of data **************************************** Once you have written the program, compile it using option 14. After you have compiled the program, you want to call it and see what the report looks like. To call the program, simply type on the command line: CALL PGM(USER000/TUTROO8) Next, go to the Work Spool File (WRKSPLF), find the program, and key in a 5 to view the report. This is what the report will look like: 11192002 CUSTOMER ORDER REPORT PAGE 0001 # OPEN AMT OPEN CUST # CUSTOMER NAME ORDERS ORDERS 001002 E LUMPKIN .00 0 001084 CHISOLM .00 0 001105 HAGGINS .00 0 001109 BYRD .00 0 001168 ROMERO .00 0 001177 POUNDS .00 0 001183 HINTON .00 0 001184 YANCEY .00 0 001186 MCDOUGLE .00 0 001202 DAVIS .00 0 001208 TARVIN .00 0 001214 GOOSEBERRY .00 0 001234 REID .00 0 001239 COLBERT .00 0 001259 BLACKMON .00 0 001264 CRANFORD .00 0 001266 DODSON .00 0 001269 LENSON .00 0 001274 JACKSON .00 0 001284 TAPER .00 0 001287 WILLIAMS .00 0 001293 FEAZELL .00 0 001294 MC CULLUM .00 0 001301 SMITH .00 0 001303 MCGHEE .00 0 001308 WALLACE .00 0 001318 ROBINSON .00 0 11192002 CUSTOMER ORDER REPORT PAGE 0002 # OPEN AMT OPEN CUST # CUSTOMER NAME ORDERS ORDERS 001480 VALLIERE .00 0 001480 BAILEY .00 0 001485 POLLARD .00 0 001492 JORDAN .00 0 001502 EVERETT .00 0 001504 HIGGINS .00 0 001509 JONES .00 0 001523 BENDER .00 0 001539 BUDD .00 0 001557 KINSEY .00 0 001561 PILKINGTON .00 0 001579 HAWKINS .00 0 001583 MOBBS .00 0 001584 SELLERS .00 0 001587 WALKER .00 0 001591 SLACK .00 0 001604 HINKLE .00 0 001606 ALLEN .00 0 001608 R MALONE .00 0 001614 JACKSON .00 0