******************************************************************************* * * * Author - Nick Makris - STARTECH SYSTEMS - San Francisco, CA * * Date - OCTOBER 1988 * * * * ********** WIDE REPORT CHECK PROGRAM ************ * * * * ************ NO RIGHTS RESERVED ************* * * * ******************************************************************************* **** If you are using a HP Laser Jet Series printer or compatible you may want **** to change the field PPAPWID in file PRTROPTS.DBF to the value 110. This **** cause the program PRTRTEST to print the centered text more to the right, **** however, it will then be compatible with this program. ************************ PSUEDO CALLING PROGRAM CODE ************************** **** OKTOPRT=.F. **** HANDFEED=.F. **** DO WIDRPTCK WITH OKTOPRT,HANDFEED,108 **** IF .NOT. OKTOPRT **** return **** ENDIF **** IF HANDFEED && THE PRINTER IS SET UP FOR SINGLE SHEETS **** wait between page breaks **** ENDIF ******************************************************************************* PARAMETERS oktoprt,handfeed,rptwidth save screen to widrptck handfeed = .f. oktoprt = .f. do case case rptwidth < 133 if mpapwid > 109 && 11" times 10 chars/inch if mpapwid > 129 && no compression required oktoprt=.t. return else && compression required if len(trim(mpcompon)) > 1 && printer compressed code appears to be there ANS=' ' do clearbox with 18,3,2,20,76,.t.,.T.,; "Can you manually insert an 11X8.5(HORIZONTAL) sheet in this printer?","","" RESTORE SCREEN FROM WIDRPTCK IF ANS$"yY" HANDFEED=.T. OKTOPRT=.T. RESTORE SCREEN FROM WIDRPTCK RETURN ELSE && CAN'T PRINT REPORT do clearbox with 18,7,2,20,73,.t.,.f.,; "Can't print report on < 110 columns - Select another printer!","","" SVXX = INKEY(7) return ENDIF else && missing compression code do clearbox with 17,6,2,20,74,.t.,.f.,; "Printer driver is missing the compression code for this report!",; "Can not print this report - Add code or select another printer!","" SVXX = INKEY(7) return endif endif else && probably 80 column printer if MLASER && has landscape mode if len(trim(mpcompon)) > 1 .and. len(trim(MLANDSCAPE)) > 1 * printer compressed and landscape codes appears to be there oktoprt=.t. return else && missing codes do clearbox with 17,2,2,20,77,.t.,.f.,; "Your Laser printer is missing the proper control codes for this report!",; " Can not print this report - Add codes or select another printer!","" SVXX = INKEY(7) return endif else && not Laser printer and not 110+ columns if len(trim(mpcompon)) > 1 && printer compressed code appears to be there ANS=' ' do clearbox with 18,3,2,20,76,.t.,.T.,; "Can you manually insert an 11X8.5(HORIZONTAL) sheet in this printer?","","" RESTORE SCREEN FROM WIDRPTCK IF ANS$"yY" HANDFEED=.T. OKTOPRT=.T. RETURN ELSE && CAN'T PRINT REPORT do clearbox with 18,7,2,20,73,.t.,.f.,; "Can't print report on < 110 columns - Select another printer!","","" SVXX = INKEY(7) return ENDIF endif do clearbox with 18,1,2,20,78,.t.,.f.,; "Can't print on < 110 columns - add compression code/select another printer!","","" SVXX = INKEY(7) return endif endif otherwise && must have compression even with 132 col printer if mpapwid > 109 && 11" times 10 chars/inch if len(trim(mpcompon)) > 1 && printer compressed code appears to be there if .not. mcontfeed HANDFEED=.T. OKTOPRT=.T. RETURN else OKTOPRT=.T. RETURN endif else && missing compression code do clearbox with 17,6,2,20,74,.t.,.f.,; "Printer driver is missing the compression code for this report!",; "Can not print this report - Add code or select another printer!","" SVXX = INKEY(7) return endif else && probably 80 column printer if MLASER && has landscape mode if len(trim(mpcompon)) > 1 .and. len(trim(MLANDSCAPE)) > 1 * printer compressed and landscape codes appears to be there oktoprt=.t. return else && missing codes do clearbox with 17,2,2,20,77,.t.,.f.,; "Your Laser printer is missing the proper control codes for this report!",; " Can not print this report - Add codes or select another printer!","" SVXX = INKEY(7) return endif else && not Laser printer and not 110+ columns if len(trim(mpcompon)) > 1 && printer compressed code appears to be there ANS=' ' do clearbox with 18,3,2,20,76,.t.,.T.,; "Can you manually insert an 11X8.5(HORIZONTAL) sheet in this printer?","","" RESTORE SCREEN FROM WIDRPTCK IF ANS$"yY" HANDFEED=.T. OKTOPRT=.T. RETURN ELSE && CAN'T PRINT REPORT do clearbox with 18,7,2,20,73,.t.,.f.,; "Can't print report on < 110 columns - Select another printer!","","" SVXX = INKEY(7) return ENDIF endif do clearbox with 18,1,2,20,78,.t.,.f.,; "Can't print on < 110 columns - add compression code/select another printer!","","" SVXX = INKEY(7) return endif endif endcase RETURN