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 Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Print 3 copies at a time but change some info 4

Status
Not open for further replies.

sue1127

Programmer
Jul 10, 2000
88
US
I am using ms sql server 7.0 and Crystal Reports 8.0. The Purchasing Department currently uses a different system, and prints their PO's in triplicate on a dot matrix printer. I've created a Crystal PO, and we would like them to switch to a laser printer. However if the PO doesnt' print in triplicate(using 3 different colors), they want the PO to display vendor copy, department copy, Purchasing Office copy respectively.

The only solution I can think of is to have them choose an input parameter each time to indicate whose copy it is. But that is really unacceptable, since they would have to refresh each time. Can anyone suggest a way that I can let them print three copies of each PO at a time, but display the appropriate recipient?

Thanks,

Sue
 
hi

how about they use triple ply copy paper

cheers

pg

pgtek
 
I'm not sure what triple ply copy paper is. Does that print 3 different copies at a time? I didn't know that kind of thing was available for laser printers. If it is, do you know if it's unusually expensive?

Thanks,

Sue
 
Save your main report under some different name, using [Save As]. Then import it twice as a subreport, maybe in the report header and report footer. This means effectively running it three times, which is slow but will work.

Madawc Williams
East Anglia, Great Britain
 
Madawc,

Interesting idea. Thanks, I'll give it a try.

Sue
 
Are you printing this from an application, or from Crystal?

If you're printing from an in house application using the Report Designer Component, you could create a blank formula field on the report that gets set at runtime by looping through the printing process 3 times, and setting the formula text differently each time.

If not, then Madawc's solution is the only way to go.

-dave
 
Vidru,

I'm printing from a vendor supplied package(part of a suite of administrative software for higher ed) that sits on the network. I've never used the Report Designer Component. It was my understanding that it is available only in the Developer version of CR 8.0, not the Professional version. Do you know if that is correct?

Thanks,

Sue


 
Yes, Sue, that is correct. Just offering up another option in case it was an in-house application, and you had the Developer edition.

-dave
 
Another approach is to create a simple "COPY" table in MS Access, Excell, or other available secondary data source (assuming you can't create new tables in the primary data source).

That table can have 3 records:
COPY COPY_NAME
1 Vendor Copy
2 Department Copy
3 Purchasing Department Copy

Adding that table to the report without a join would cause "Record Inflation" whereby each Invoice gets "cloned" 3 times, but each "clone" is related to a different record in the COPY table.

Now all you need is to drop the "COPY_NAME" column on your report layout and you are done.

hth,
- Ido

CUT, Visual CUT, and DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
I tried creating two subreports, but I couldn't get it to work correctly.

The report is called in a stored procedure, and I tried creating the additional table as IDO suggested(I was able to do it in the primary source), and adding it to the sp, but instead of printing a separate page for each po record, it printed 1 page with the po record listed 3 times. Can I not do this in a stored procedure, or did I do something wrong?

Thanks very much.

Sue
 
Sue,

Just force a new page for each invoice by right-clicking the detail section, selecting 'Format Section', and turning on the New Page After property.

You may want to avoid a last blank page by entering the following expression for ther 'New Page After':
----------------------
NOT OnLastRecord
----------------------

Cheers,
- Ido


CUT, Visual CUT, and DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
Obviously, if you were grouping on Invoice_N and you need to repeat group header or group footer information, add a Group Level 2 on {COPY.COPY} and move the headers and footers to level 2 instead of level 1.

In that case, use the 'New Page After property' for GF2.

Cheers,
- Ido

CUT, Visual CUT, and DataLink Viewer:
view, e-mail, export, burst, distribute, and schedule Crystal Reports.
 
Hey, I am doing something very much like this on the invoice report printed to a Sharp 450 printer. I turn on two-sided copy and have a canned back page in the second page footer section, which is only necessary on the customer copy, I turn the font color to white on the other two --just lazy.
There are three sheets, {customer, accounting, salesman} and in the middle of each I have three total bitmaps which have those words angled at 45 degrees in a paint program at huge size (font 72pts) dimmed down a bit. These are used as watermarks with underlay following sections turned on, and each uses a formula suppression that works out to
[tt]if({CRW-INVOICE-PRINT-COUNT.Invoice-Print-Count} <> 1) then yes [/tt]​

This is similar to Ido's approach as CRW-INVOICE-PRINT-COUNT is a table that tracks how often my reports are printed --acts as a logfile as well...

And to make Ido's suggestion work you do need be sure to have a pagebreak after each record somewhere.

Scotto the Unwise
 
Thanks to Ido and Scotto for the advice. At this time the department is thinking about continuing to use a dot matrix printer with triplicate pages, so I've put this project aside for now. I do hope to get back to it when I have some time available, but as of now I haven't got it to work.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top