Does anyone know how to print 1 report to multiple printers without the user having to select a printer each time?
One solution could be to copy the report and setup the Printer Selection per report and direct each report to another printer. But this is not a nice solution.
Is the table Printer Selection used somewhere in a codeunit anyway, or is this Bill's secret code?
0
Comments
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Didn't see the time ... we were probably working on our answer the same time ... what's the chance ...
:-#
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
It returns one record with one printer.
I guess the function is called somewhere internal in every report.
So, how to make it work that more than 1 printers/records are returned?
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
this code is returning one printer ... every place that is calling this code ... is expecting one printer, so you should change all places ... .
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
we should be marrying ... =; [-( [-X
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Exactly, but where is this function called? Is this a hidden call from the report? I can't find the code that is using this function in Codeunit 1.
ps. if it works out between the both of you, I am willing to be the best man.
I looked into NDT and this function is not called anywhere --- it means that it is called internally in fin.exe (same as for example function OnGlobalInsert etc.) --- YOU cannot change the code for calling this... and thus you cannot make what you need in this way...
There must exist another way how to do it...
For standard documents you can define more reports for printing (printing sequence) - if you have 3 copies of the report (it is the 'not nice' solution) and per report setup, it is printed automatically... I think that it is most easy solution... another is to try print same report 3 times and alter the function to select another printer based on some helper table to know if it is 1st, 2nd etc. printing...
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Conclusion: there is no real solution, but there are 3 workarounds:
- copy the report-object and define the objects in the Printer Selection
- call the report with C/AL code multiple times and change the Printer Selection record in between
- use a Windows based solution like the following one I found:
Printerpooling
Print to multiple printers with 1 printjob
http://www.frogmorecs.com/printdistributor.html
Print Distributor allows you to intercept Windows print jobs and forward them to multiple printers or files.
Installed as a printer Port Monitor in Windows NT / 2000 / XP / 2003 Print Distrubutor allows you to create virtual print queues to distribute your output. Send your print jobs to all the destinations or now with our new load balancing option distribute jobs evenly between any number of printers.
ps. Bill: Novell has a standard functionality for this, windows doesn't!
MVP - Dynamics NAV
My BLOG
NAVERTICA a.s.
Once, I made some kind of a "report-printing-server".
I was just inserting lines into some kind of parameter/worktable, and the reportserver (some kind of NAS) was reading that table and printing the necessary reports.
The reason why we developed the report server: the user doesn't have to wait until a heavy report is printed ... the reportserver will do it. One print command is just an insert into a table ... . Off course, when developing such a server, you can create the functionality as you like ... printing more than one report as well.
Eric Wauters
MVP - Microsoft Dynamics NAV
My blog
That's an option as well. But a more heavy one I guess.
There has to be made a new table in which fields have to be defined that can contain filters for the report filters. Quit a lot of work.
And using one user license might be more expensive than the printer pooling software.