Steve,
Most printers are controlled by the windows printer driver. In the driver,
you normally have
options such as "Print Order - Front to Back Back to Front" or "Last page
first" Options
such as COLLATE will group page numbers. Duplex printers often have options
to have
duplex along left side or top. Depending on the printer, there may be many
options. The
main point is that the printer controls all duplex functions and the driver has
to be set to
produce what you desire.
So to answer your question, which prints first, is whatever you have your
driver set to do.
In most cases that I have seen, the default is front to back, however. Pull up
the printer driver
for your printer and look at all options. Sometimes options will make things
seem pretty
weird such as "BOOK" type duplex, printing in landscape mode, which will print
(4) pages
on one sheet of paper. On an (8) page report, pages 1 and 8 would print on the
front side
of sheet number 1, then pages 2 and 7 would print on the back side. On sheet
number 2,
pages 2 and 7 would print on the front and then 3 and 6 on the back.... and so
on.
This is so that the pages can be folded down the middle of the landscape print,
stapled
and create a book that reads pages 1 through 8 correctly.
Also note that printing duplex can be tricky if you have different page length
reports (or
invoices in this case) If you have two (1) page invoices and have your printer
set to duplex,
they will both be printed on one page. The one invoice on the front and the
second on the
back. With most duplex printers, it will not matter that you created the two
invoices in a loop
and two print commands. The duplex function knows nothing about when to start
a new invoice or not.
You must control that with your program by using form feeds (new page after
section) options,
unless your printer driver has a "page feed between print job" option or ejects
a page between
print jobs by default.
Hope that is of some assistance.
-Bob
----- Original Message -----
From: Steve Breen
To: RBASE-L Mailing List
Sent: Sunday, April 13, 2008 3:11 PM
Subject: [RBASE-L] - RE: Duplex printing Issue - Rbase and Mayby not rbase
By the way we are using a Rioch SP 8510 and a Rioch 4510 Printer
-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] Behalf Of Steve Breen
Sent: Sunday, April 13, 2008 3:17 PM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Duplex printing Issue - Rbase and Mayby not rbase
Here is my question
What printers first when duplex printing?
1. The front page?
2. The back page?
Here is my issue (and I can repeat this with Word and RBase):
If I am tring to print a single page (1 sided document) all is ok.
If it is a 2 sided invoice then the back page prints first and the front
side second. This was is major issue since we are using single sided pre
printed forms.
In our case all the invoice information is on the front and then there are
case notes and tire installation information that in some cases carry over on
the back.
Thes invoices are run ussing the following code. Each invoice is generated
seperatly in a while loop. So as long as the invoice is one sided all is ok.
When a two page (sided) invoice is generated it prints back page on the letter
Head or Preprinted invoice side first and then front on the blank side. On the
next invoice if only one page all is ok.
Any Ideas.
Help I am in a real bind on this one and under a time line.
Thanks
Stephen Breen
CDI Services, Inc.
Road Support Division
-- new_INVPRINT.RMD
-- Print invoices for a specified billing date
-- This prints all invoices for all customers for the specified date,
-- in invoice number order based on parmets set up
RUN myset_off
-- RUN myset
-- start of code
DIALOG 'Do You Want To Select A Invoice Number Range To Print By ...'
vresponse1 vendkey1 no +
CAPTION 'Invoice Selection Option ...' +
ICON attention +
OPTION BUTTON_YES_CAPTION YES +
|BUTTON_NO_CAPTION NO +
|OPTION MESSAGE_FONT_NAME ARIAL FB|MESSAGE_FONT_SIZE 12
IF vresponse1 = yes THEN
GOTO invoice_range
ENDIF
IF vresponse1 = no THEN
GOTO start_print
ENDIF
LABEL invoice_range
RUN new_Get_Invoice2.rmd
IF vinvoice1 OR vinvoice2 IS NULL THEN
-- RUN errmsg.rmd USING 'No Invoice Number Entered'
GOTO finish
ENDIF
DELETE ROWS FROM attinv_master_cust WHERE cdiinv < .vinvoice1 OR cdiinv >
.vinvoice2
DELETE ROWS FROM attinv_charge_desc WHERE cdiinv < .vinvoice1 OR cdiinv >
.vinvoice2
-- end of code
LABEL start_print
-- START OF CODE FOR TWO PAGE INVOICES
-- CURRENTLY ONLY TRANSADVANTAGE NEEDS TWO PAGE INVOICES
DROP CURSOR c1
DECLARE c1 CURSOR FOR SELECT pon FROM attinv_master_cust +
WHERE (parentcustid = 164 OR parentcustid = 110 OR parentcustid = 193) +
ORDER BY cdiinv pon
OPEN c1
WHILE (1=1) THEN
FETCH c1 INTO vpon IND i1
IF SQLCODE <> 0 THEN
BREAK
ENDIF
PRINT new_invoice2 WHERE pon = .vpon +
OPTION PRINTER +
|DUPLEX horizontal +
|COPIES 1 +
-- using default printer here
ENDWHILE
-- END OF TRANSADVANTAGE 1ST PAGE PRINTING CODE
-- START OF CODE
-- RUN INV_PRINT_ATTENTION.rmd
-- DIALOG box
-- (CHAR(009)) = Tab Key (Indent)
-- (CHAR(013)) = Carriage Return
CLS
SET VAR vmsg = +
('The First or Customer Copies Of The TransAdvantage Invoices Have
Printed'+(CHAR(013))+ +
''+(CHAR(013))+ +
'Do You Wish To Print The Second or Payment Copy at this Time
??'+(CHAR(013))+ +
''+(CHAR(013))+ +
'If Printing Second Copy - Remove First Copy From Printer Now - Then Click
Yes '+(CHAR(013))+ +
''+(CHAR(013))+ +
'Otherwise Still Remove Copies From Printer Now Before Printing Other
Customer Invoices'+(CHAR(013))+ +
' Then Click NO or
Press Enter'++(CHAR(013)))
DIALOG .vmsg vresponse2 vendkey2 no +
CAPTION ' INVOICE PRINTING ATTENTION NOTIFICATON ...' +
ICON question +
OPTION TITLE_FONT_COLOR BLACK +
|TITLE_FONT_NAME ARIAL +
|TITLE_FONT_SIZE 12 +
|TITLE_BOLD ON +
|TITLE_BACK_COLOR WHITE +
|TRANSPARENCY 255 +
|WINDOW_BACK_COLOR WHITE +
|BUTTON_YES_CAPTION &YES +
|BUTTON_NO_CAPTION &NO +
|BUTTON_YES_COLOR GREEN +
|BUTTON_NO_COLOR RED +
|BUTTON_YES_FONT_COLOR WHITE +
|BUTTON_NO_FONT_COLOR WHITE +
|TOP 250 +
|LEFT 200
IF vresponse2 = yes THEN
GOTO start_print2
ENDIF
IF vresponse2 = no THEN
GOTO trans_printing_done
ENDIF
-- END OF CODE
LABEL start_print2
-- START OF CODE FOR TWO PAGE INVOICES
-- CURRENTLY ONLY TRANSADVANTAGE NEEDS TWO PAGE INVOICES
DROP CURSOR c1
DECLARE c1 CURSOR FOR SELECT pon FROM attinv_master_cust +
WHERE (parentcustid = 164 OR parentcustid = 110 OR parentcustid = 193) +
ORDER BY cdiinv pon
OPEN c1
WHILE (1=1) THEN
FETCH c1 INTO vpon IND i1
IF SQLCODE <> 0 THEN
BREAK
ENDIF
PRINT new_invoice2 WHERE pon = .vpon +
OPTION PRINTER +
|DUPLEX horizontal +
|COPIES 1 +
-- using default printer here
ENDWHILE
-- END OF TWO PAGE CODE
CLS
PAUSE 2 USING 'THE 2ND COPY OF TRANSADVANTAGE INVOICES HAS PRINTED - PLEASE
REMOVE FROM PRINTER' +
CAPTION 'INVOICE ACTION REQUEST - PRESS ENTER OR OK TO PRINTING
NON-TRANSADVANTAGE INVOICES' ICON attention
CLS
LABEL trans_printing_done
-- START OF CODE FOR SINGLE PAGE INVOICES
-- CURRENTLY ONLY TRANSADVANTAGE NEEDS TWO PAGE INVOICES
DROP CURSOR c1
DECLARE c1 CURSOR FOR SELECT pon FROM attinv_master_cust +
WHERE (parentcustid NE 164 AND parentcustid NE 110 AND parentcustid NE 193)
+
ORDER BY cdiinv pon
OPEN c1
WHILE (1=1) THEN
FETCH c1 INTO vpon IND i1
IF SQLCODE <> 0 THEN
BREAK
ENDIF
PRINT new_invoice2 WHERE pon = .vpon +
OPTION PRINTER +
|DUPLEX horizontal +
|COPIES 1 +
-- using default printer here
ENDWHILE
-- END OF SINGLE PAGE CODE
CLS
PAUSE 2 USING 'ALL INVOICES HAVE FINISHED PRINTING - PLEASE REMOVE FROM
PRINTER' +
CAPTION 'INVOICE ACTION REQUEST - PRESS ENTER OR OK TO FINISH' ICON
attention
LABEL finish
DROP CURSOR c1
RETURN
------------------------------------------------------------------------------
No virus found in this incoming message.
Checked by AVG.
Version: 7.5.519 / Virus Database: 269.22.13/1375 - Release Date: 4/12/2008
11:32 AM