
Print image in PROIV report
#2
Posted 05 August 2008 - 04:17 PM
Has anyone successfully printed an image onto a laser printer using a PROIV report? We want to print customer's logo on an invoice. If so, how did you do it? Thanks.
I believe the only way of accomplishing this is to use a third part, printer friendly, report application such as Crystal Reports, Jetforms, Adobe, etc... ProIV's reporting capabilities are still in the dark ages when it comes to wanting nice looking modern reports.

AK
#4
Posted 06 October 2008 - 02:15 PM
Hello All,
Has anyone successfully printed an image onto a laser printer using a PROIV report? We want to print customer's logo on an invoice. If so, how did you do it? Thanks.
Can the image be loaded onto the printer to be accessed by an escape sequence? If you are using a windows environment, this question is mostly useless though, since windows print drivers strips out the escape codes.
#5
Posted 06 October 2008 - 07:50 PM
Alternatively, a VB programme can be constructed to control printer features and destinations (one of my customers implemented a simple programme to assist). It's likely that during next year this utility will be enhanced to include logos among many other features. If development is carried out I'll post more information when it's available.
This may be a path to avoid reliance on third party printing capabilites.
#6
Posted 06 October 2008 - 07:58 PM
#7
Posted 06 October 2008 - 09:21 PM
Thanks Donald. I did see a post by Deep Gosh regarding Jaspersoft. I am looking into it as well. I did not want to get started learning and embedding a new product into our PROIV app at this point but it may be time well spent - to spiff up reports in general and this invoice specifically.
I asked about being able to load escape sequences because I worked for a company that created shipping labels, stock labels and bar codes from PRO-IV. They did it by loading a font on the computer and managing to avoid using the windows print drivers. The labels/bar codes used a font loaded into the printers and an escape sequence to trigger the printer to switch fonts. The results were very professional looking and clean. It just takes a bit of work to avoid using the windows print drivers. My memory on that is a bit hazy but I recall writing files out to a sub directory then having a special process pick them up via a cron process and print them without using windows drivers.
#8
Posted 06 October 2008 - 09:31 PM
Thanks for the replies. We want to stay away from any hardware dependency. We have a vertical market product and the maintenance would be too much. I do think you have a good solution for an installation which can control the printer manufacturer(s) they use.
Regards,
Lew
Edited by Lewis Mccabe, 06 October 2008 - 09:32 PM.
#9
Posted 27 January 2009 - 03:42 PM
I would like to package the classes within PROIV's servlet container or run it with Apache-Tomcat parallel to Jetty-Tomcat as I am currently doing with Lowagie's iText PDF API.
What I have read about iReport is that,one can create an XSL templates and render the XML to PDF output on the server.
The tool is running on both Linux and windows and can be platform independent.What is interesting about the tool,it support XML datasource,ODBC and JDBC-ODBC.
I see that the installation of the iReport for windows server side only is 217 MB size which seems to too huge.
Is there anyone running iReport for JasperSoft and how do you find it?Can someone who is using iReport recommend it?
Matthews Estrice
#10
Posted 02 March 2009 - 03:14 PM
Hello All,
Has anyone successfully printed an image onto a laser printer using a PROIV report? We want to print customer's logo on an invoice. If so, how did you do it? Thanks.
Lewis,
Our solution requires the end user connect via the gui client.
When the print option is selected, we create an html document that incorporates the "img src" command.
On unix/linux, the form has to be available in a shared folder.
We set up most of our systems with SCO Unix 5.0.6 and create an accessible shared folder through Visionfs.
We then issue the "gui /c start iexplore" command to instruct the PC to fire off Internet Explorer and include the path to the html form.
The document will appear within IE, and the end user can then click the print button within IE.
A side benefit: If Cutepdf writer is installed, the user can roll this document into a pdf file that can be attached to an email.
Jon
#12
Posted 03 March 2009 - 01:21 AM
Jon,
Thanks for the info.
How are you cleaning up the html printed output to make it printer friendly?
Lewis,
We learned several things along the way.
Do not put anything in the Header definition "P", as it will cause page breaks that don't look appealing in the display.
Define a value variable:
&$IMAGE-LOGO (or any name you define). Define it as: <img src=\\server-IP\HEADINGS\HEADER.jpg>
In header "1" (or whichever header you call first) leave the relative line number blank, put a "1" in column number, then in the text area put "<pre>" --no quotes -- to preserve any text you have formatted elsewhere in your function.
The <pre> command has to be the very first html command that occurs in the report or else the output will all run together without cr/line feeds.
Header "1" (or whichever header you call first) creates a nice logo / letterhead / whatever-you-want, and only prints once.
In your header, set &$IMAGE-LOGO as: Variable = Y. Length = 200 (or at least enough characters to allow the value variable to be used.... otherwise the image will not print).
Sometimes we define a variable in logic too, such as $$LASTMUGSHOT (we are a var for police / fire software <-- shameless plug) and use it in the header too.
To eliminate the irritating header being printed on every page, we also leave out the page length in all of the Report Characteristics definition.
$SPOOL: set to a file name like " /u/data.html/RAPSHEET.html" --no quotes --
Then in an exiting logic do something like:
DISABLE(&#@RPAGEF) Not sure if it's redundant, but it's been working.
then we have this:
#STAT = SYSTEM('cp /u/data.html/RAPSHEET.html ' + '/u/data.html/' + @OPR + '-RAPSHEET.html')
#STAT = SYSTEM('GUI /C START IEXPLORE ' + &$CTLGHTMDIR + '\html\' + @OPR + '-RAPSHEET.html')
As mentioned before, the image has to be available from a shared folder.
You can also define value variables such as &$REPORT-CONF and define it as: <font color="red">** CONFIDENTIAL -- POLICE USE ONLY **</font>
Then call it in the header.
You can do any html commands this way.
Just be sure you define a variable length in the header that allows the total value variable to be read in... a mistake I've made a couple times is have too short a variable, and then the only thing that will print is part of the html command.
The only change to the printing technic is now the end user must click the IE print button.
btw: IE keeps a history on each pc, and unrestricted users can read any of this info........
Jon.
Reply to this topic

0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users