Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Printing to the back of a page

Status
Not open for further replies.

icodian

IS-IT--Management
Aug 28, 2001
74
US
Morning!

We have a printer setup to print to the back of every page. On the Invoice, we would like to print Terms and Conditions here. Therefore, every other "page" must print these Terms and Conditions.

Is there a function/utility of some sort in Crystal that will allow me to have a Terms and Conditions in a header/footer/sub-report/etc. that will print on every other page. Keep in mind that we would also like the page number to still increment correctly. i.e. Page 1 prints front-Invoice and back-Terms. The back is not considered Page 2. Page 2 begins with the second page of the Invoice on the front with the Terms on the back and so on.

Let me know if that makes sense...it's early.

Thanks for any help!

Scott
 
I'm only stumped in that I don't know what you want...

This:

"that will print on every other page. Keep in mind that we would also like the page number to still increment correctly. i.e. Page 1 prints front-Invoice and back-Terms. The back is not considered Page 2. Page 2 begins with the second page of the Invoice on the front with the Terms on the back and so on."

So is every other page when it changes page numbers, or each side of a page??? Sounds like you want every other page as in printed page 2 (which is page 3), then printed page 4, (which is page 7), etc...


I thought that pagenumbers were assigned to each page and that you would have to keep a counter going to handle 1 page per two pages printed, but it's been a while since I did this. If pagenumbers are assigned for the start of each Front side of a page, set a variable in a formula at the end of a page to equal the pagenumber, and check it in the beginning of the page with a formula to determine if it's the same, if not, then print something.

The following would print a page on every even numbered page:

if pagenumber/2 = int(pagenumber/2) then "Print Something"

The following would print a page on every 4th page starting at page 3 (as I defined it above):

if ((pagenumber+1)/4) = int((pagenumber+1)/4) or pagenumber = 3 then "Print something"

Try listing something like:

Page Print
1F Invoice
1B
2F Invoice
2B
3F
3B

or

Page Print
1F
1B
2F Invoice
2B
3F
3B
4F Invoice

So it's clear what you want.

Hopefully the formulas I gave you resolve it anyway.

-k kai@informeddatadecisions.com
 
Thanks for the response K. I will take a look into the formula method you described. In the mean time, let me try to be more descriptive.

Using your Page # sample, here's what I would like to see:

Page Print
1F Invoice #1 Page 1
1B Terms and Conditions
2F Invoice #1 Page 2
2B Terms and ...
3F Invoice #2 Page 1
3B Terms...
4F Invoice #3 Page 1
4B Terms...
5F Invoice #3 Page 2
5B Terms...
etc.

Basically, it is a normal Invoice print run except the same Terms print on the back of every page,

The only way I've been able to get remotely close to this is by putting the Terms in a Report Footer and forcing a "New Page Before" it. Of course this should only print on the very last page anyway, so it was pretty pointless.

Additionally, when the Terms printed on a seperate page like this, the Page Header of the Invoice still appears at the top of the page. At the time I was only testing a 1 page Invoice. So, I tried suppressing the Page Header on page 2 so that the Terms would be the only thing to print. This is when I realized that the second page still considered itself part of page 1 so this method would not work.

Overall, I guess this is a multiple part question.
1. How can I make the Terms print on the back of every page?
2. How can I suppress the Page Header if the back of the page has the same page number as the front?

I hope that details the issue a little more clearly. Thanks again for the assistance.
 

A solution would be to have 2 page headers.

"Page header a" is the page header of the front of a page.

"Page header b" is your term and condition page. You have to make the height of this page header big enough so that it will print on one page.

Then you conditionally suppress "Page header a" with :

if (pagenumber/2 = int(pagenumber/2)) then
true
else
false

and "Page Header b" with :

if (pagenumber/2 <> int(pagenumber/2)) then
true
else
false



You also have to check &quot;New page before&quot; for the report footer for your report to print 1 last &quot;Term and condion&quot; page for the last front page of your report. The only problem is that it print a blank page after that.


For your page number you can use the formula :

totext(int((pagenumber+1)/ 2), &quot;0&quot;)



Frank

 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top