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

Printer Queue report Information

Status
Not open for further replies.

fpater

Programmer
Oct 24, 2000
45
0
0
US
I have an application that needs to send 3 different reports to the printer at the same time. The problem is that we are using Citrix servers with uniprint software and because the application sends 3 jobs to the printer, Uniprint ask 3 times where the report needs to be print. Is there a way to concatenate the 3 reports in 1 file so appears as 1 job in the queue? (Better if is a Foxpro solution).

Note: There is nothing to do on the citrix/uniprint side to make the dialog disappear.


Francisko Paternoster
Patercorp
 
There may be simpler methods but one that comes to mind that I have used is build a table with all the fields required for all three reports plus a reportid field. Then build the report format with overlapping fields using the 'print when reportid=1' or 2 or 3. Reportid can also be a major page break and used in headings and sub total lines.
 
fpater,

This is a really good question. I'm not sure off the top of my head how you would get around this without consolidating the data or automating the necessary button clicks to get past that dialog.

boyd.gif

[sub]craig1442@mchsi.com[/sub][sup]
"Whom computers would destroy, they must first drive mad." - Anon​
[/sup]
 
fpater,

MikeLewis said:
Yes. Place PRINTJOB before the REPORT FORM commands, and ENDPRINTJOB after it.

boyd.gif

[sub]craig1442@mchsi.com[/sub][sup]
"Whom computers would destroy, they must first drive mad." - Anon​
[/sup]
 
HELP!

My situation is that i have two report pages that require printing one after the other to make up the full documentation, these report pages hold the data for one record therfore I may need to print off more than one record keeping the same sequence of printing as mentioned above.

This is the code I am using to preview the reports for each record. Here the user has to close each report page previewed to view the next page, I tried usIng the same scan endscan command when printing but I only appear to be able to print one record, plus I can take away the printer prompts but get the printing page message flashed to the screen for each report page which lokks a bit confusing. ANY SUGGESTIONS!!!!!

if reccount('common_crossing_worksheet_data') > 0
scan all
report form 'common_crossing' for recno() ==
recCtr preview
report form 'common_crossing_cont' for recno() ==
recCtr preview
recCtr = recCtr + 1
endscan
else
messagebox("There are no Common Crossing Work Sheets for
Order: " + alltrim(str(m.order_no)), 16, "Common Crossing
Worksheets")
return
endif
 
MForest,

1. In VFP 8 you can hide the "Printing" status window:

report form <report.frx) to printer nodialog

From VFP 8 help: "The optional NODIALOG clause does not show the run-time print dialog box when a report is being sent to a printer."

2. Cathy Pountney's book on VFP Printing discusses several techniques. Available from
3. The following technique may work (its from some old code - I'm not on a printer connected PC or I would test) - the theory is that the status window you see gets placed in the active window so you create an active window and move it off screen to hide anything showing up.

define window winStatus at 0,0 size 10,10
move window winStatus to -1000, -1000
activate window winStatus
report form <report.frx> to print noconsole
release window winStatus

Do any of these techniques help?

Malcolm
 
Hi Malcolm thank you for your response, its the last thing outstanding on my project.

I used the following code

define window winStatus at 0,0 size 10,10
move window winStatus to -1000, -1000
activate window winStatus
report form <report.frx> to print noconsole
release window winStatus

I still get the print message box which flashes to the screen twice as I print two reports one after the other. Even though I use the scan / endscan command to look at each record within my cursor in able to print out the two report pages for the first record followed by two report pages for any other records, in that order. The scan/ endscan works when I preview the reports but only appears to print out only one record even though I have 3 records to print. Any ideas with this?

if reccount('common_crossing_worksheet_data') > 0
scan all
define window winStatus at 0,0 size 10,10
move window winStatus to -1000, -1000
activate window winStatus
report form 'common_crossing' for recno() == recCtr to
print noconsole
report form 'common_crossing_cont' for recno() == recCtr
to print noconsole
release window winStatus
recCtr = recCtr + 1
endscan
else
messagebox("There are no Common Crossing Work Sheets for
Order: " + alltrim(str(m.order_no)), 16, "Common Crossing
Worksheets")
return
endif
 
MForest,

Your code looks good. Perhaps I'm missing something as well.

1. Is it possible for you to upgrade to VFP 8 where you can get your desired behavior "out-of-the-box"?

2. It really might be worth the money to purchase Cathy Pountney's book on the VFP Reportwriter. I know this book discusses several solutions to your problem. This book is available from
If you find the reason why your current code isn't acting like we think it should can you update your posting?

Good luck!
Malcolm
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top