* Program : PRICELST.PRG * Version : V4.2 * Author(s) : Joe Tomas * Date : 07/31/86 * Notice : * Called by : REPORTS.PRG * Call(s) : * Notes : PRINTS DECUS PRICE LIST * : CLEAR SET INTENSITY ON STORE ' ' TO LOWER STORE ' ' TO UPPER STORE 1 TO COUNT IF .NOT. FILE("OE-OK.MEM") @ 10,20 SET COLOR TO +I ?? VBELL3+' PRODUC.DBF DATA FILE HAS NOT BEEN CREATED ' SET COLOR TO DO WHILE COUNT < 40 STORE COUNT + 1 TO COUNT ENDDO CLEAR RETURN ENDIF CALL PAINT WITH "PRICELST.IMG" USE PRODUC INDEX PRODUC GOTO TOP SET COLOR TO DO WHILE LOWER <> 'END' .OR. UPPER <> 'END' @ 10,43 SAY ' ' @ 12,43 SAY ' ' @ 10,25 SAY 'ENTER LOWER RANGE ' GET LOWER @ 12,25 SAY 'ENTER UPPER RANGE ' GET UPPER READ STORE UPPER(LOWER) TO LOWER STORE UPPER(UPPER) TO UPPER @ 20,24 SAY ' ' IF LOWER = 'END' .OR. UPPER = 'END' USE CLEAR RETURN ENDIF IF LOWER <> 'ALL' .AND. UPPER <> 'ALL' SEEK LOWER IF .NOT. FOUND() @ 20,24 SET COLOR TO + ?? VBELL3+'INVALID LOWER RANGE CODE' SET COLOR TO LOOP ENDIF SEEK UPPER IF .NOT. FOUND() @ 20,24 SET COLOR TO + ?? VBELL3+'INVALID UPPER RANGE CODE' SET COLOR TO LOOP ENDIF ENDIF IF LOWER = 'ALL' .OR. UPPER = 'ALL' GOTO TOP STORE PROCOD TO LOWER GOTO BOTTOM STORE PROCOD TO UPPER ENDIF SET DEVICE TO PRINT * ==== SET PRINTER TO 80 COLUMN/ENHANCED PRINT MODE @ 01,00 SAY CHR(27)+CHR(91)+CHR(48)+CHR(119)+; CHR(27)+CHR(91)+CHR(50)+CHR(34)+CHR(122) SET DEVICE TO SCREEN RESTORE FROM DATES ADDITIVE @ 04,00 CLEAR SET COLOR TO + @ 10,13 SAY 'PLACE PLAIN PAPER IN PRINTER...PRESS ANY KEY TO START ' SET COLOR TO DO WHILE INKEY() = 0 SET COLOR TO + @ 10,50 SAY 'ANY KEY' SET COLOR TO @ 10,50 SAY 'ANY KEY' ENDDO @ 10,00 SET COLOR TO +*I @ 10,19 SAY ' PRINTING PRICE LIST...DO NOT INTERRUPT ' SET COLOR TO STORE 10 TO LINE STORE .T. TO PAGETOP GOTO TOP SET CONSOLE OFF STORE 10 TO LINE STORE .T. TO PAGETOP SEEK LOWER DO WHILE .NOT. EOF() SET DEVICE TO PRINT IF PAGETOP @ 02,010 SAY CHR(27)+'[5w'+' DECUS ' @ 04,010 SAY 'SPG BOOKSTORE PRICE LIST' @ 05,000 SAY CHR(27)+CHR(91)+CHR(48)+CHR(119)+; CHR(27)+CHR(91)+CHR(50)+CHR(34)+CHR(122) @ 06,000 SAY REPLICATE("-",80) @ 07,005 SAY 'DECUS' @ 07,065 SAY 'SHOW' @ 07,074 SAY 'LIST' @ 08,005 SAY 'CODE' @ 08,012 SAY 'DEC PART #' @ 08,035 SAY 'ITEM DESCRIPTION' @ 08,065 SAY 'PRICE' @ 08,074 SAY 'PRICE' @ 09,000 SAY REPLICATE("=",80) ENDIF STORE .F. TO PAGETOP IF PROCOD >= LOWER .AND. PROCOD <= UPPER IF NEW = 'NEW' @ LINE,001 SAY NEW ENDIF @ LINE,006 SAY PROCOD @ LINE,012 SAY PARTNO @ LINE,026 SAY DESCRI @ LINE,063 SAY PRICE @ LINE,072 SAY MLP STORE LINE+1 TO LINE SKIP 1 DO WHILE EOF() .OR. PROCOD > UPPER @ 60,19 SAY CHR(27)+'[2w'+; 'BOOKSTORE PRICES ARE VALID ONLY FROM '+SDATE+' TO '+EDATE @ 61,01 SAY ' ' @ 62,36 SAY 'PRICES MAY BE SUBJECT TO CHANGE' @ 63,27 SAY 'MAKE YOUR PURCHASES EARLY - QUANTITIES ARE LIMITED'+; CHR(27)+'[1w' USE SET CONSOLE ON * SET PRINTER TO NORMAL 80 COL MODE ?? CHR(27)+CHR(91)+CHR(49)+CHR(34)+CHR(122)+CHR(27)+'[1w' SET DEVICE TO SCREEN CLEAR RETURN ENDDO IF LINE > 57 STORE 10 TO LINE @ 60,19 SAY CHR(27)+'[2w'+; 'BOOKSTORE PRICES ARE VALID ONLY FROM '+SDATE+' TO '+EDATE @ 61,01 SAY ' ' @ 62,36 SAY 'PRICES MAY BE SUBJECT TO CHANGE' @ 64,27 SAY 'MAKE YOUR PURCHASES EARLY - QUANTITIES ARE LIMITED'+; CHR(27)+'[1w' STORE .T. TO PAGETOP ENDIF ENDIF ENDDO ENDDO EJECT SET DEVICE TO SCREEN SET CONSOLE ON CLEAR RETURN