Reportbuilder & Reform
Hi everyone,
please give a look to this message. I need your help.
Several applications prints data over paper preprinted layouts (an invoice,
for example). The data sent by the application to the printer spooler are
only the effective data (company, address, several rows of part numbers,
descriptions, unit prices, quantities and finally the invoice total) and
they are printed into the relative blank fields of the paper preprinted
layout.
By merging the paper layout with the data we will have our complete invoice.
The paper layout is (for the invoce documents) always the same. The data not
(obvioulsy).
Now, I must build an application that, using, for example, a designer can
give me the possibility to create the electronic predefined layouts (one for
each type of document to be printed) based on the data sent to the spooler
by the external application ( like Reform Enterprise do (www.fabsoft.com)).
The reason to build a Reform like application is that, once the document is
printed, it will be converted on the fly into a searchable PDF doc and
inserted into a CRM database.
Can ReportBuilder help me in some way? Do you have some ideas about how to
do this? Do you know about a Delphi library tha can help my job?
Please help me.
Robert.
please give a look to this message. I need your help.
Several applications prints data over paper preprinted layouts (an invoice,
for example). The data sent by the application to the printer spooler are
only the effective data (company, address, several rows of part numbers,
descriptions, unit prices, quantities and finally the invoice total) and
they are printed into the relative blank fields of the paper preprinted
layout.
By merging the paper layout with the data we will have our complete invoice.
The paper layout is (for the invoce documents) always the same. The data not
(obvioulsy).
Now, I must build an application that, using, for example, a designer can
give me the possibility to create the electronic predefined layouts (one for
each type of document to be printed) based on the data sent to the spooler
by the external application ( like Reform Enterprise do (www.fabsoft.com)).
The reason to build a Reform like application is that, once the document is
printed, it will be converted on the fly into a searchable PDF doc and
inserted into a CRM database.
Can ReportBuilder help me in some way? Do you have some ideas about how to
do this? Do you know about a Delphi library tha can help my job?
Please help me.
Robert.
This discussion has been closed.
Comments
1. You need to scan the forms and convert them to a .wmf file (see article
below). Also there is an example in our Developers Guide Tutorial that
creates a tax form. That form is a wmf.
2. One option is to use the Report | PageStyle band as a background layer.
Place the image of the form on that layer. The other option is to remove the
header and footer bands and place the image on the detail band.
3. When you preview the background image will be shown. When you print to
the printer, set the background image to visible of False so that it will
not print. You can do this by implementing the Report.BeforePrint event
if myReport.PrintDevice <> nil then
myBackgroundImage.Visible := False
else
myBackgroundImage.Visible := True;
------------------------------------------
Article: Forms Emulation in Report Builder
------------------------------------------
Customers often ask how to include their pdf forms in report builder so they
can do forms emulation like our provided demo. Unfortunately, Report Builder
only supports windows metafiles (.emf) for this feature. This leads to the
question of how to convert a pdf document to an emf document.
Options
--------
1. e-Transform 2000
http://www.g7ps.com
The tax form in our tutorial was created by a customer. He used the MIPS
Transform Suite to do it at the time. This product has since been renamed to
e-Transform 2000. It is available at: http://www.g7ps.com.
2. Adobe Illustrator
Another option is Adobe Illustrator 10. Although we haven't tried it, we
have heard that is has excellent support of vector graphic format
conversions.
3. Irfanview
http://www.irfanview.com
Other customers recommend an application called Irfanview. It is available
as freeware for non-commercial use and is reportedly very simple to use.
4. pstoedit
http://www.pstoedit.net/pstoedit
Another open source freeware product called pstoedit which can be obtained
form http://www.pstoedit.net/pstoedit.
--
Tech Support mailto:support@digital-metaphors.com
Digital Metaphors http://www.digital-metaphors.com
--
Nard Moseley
Digital Metaphors Corporation
http://www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com
different. I will explain you better.
The external application normally prints (an invoice, for example) over a
printer or into a text file (say invoice.out'). We have no access to the
database of the external application, we can only read the invoice.out text
file.
The invoice file is like the 'invoice.out' file linked to this message.
Since it's text, only text, we have no reference to any active field to be
printed, we have only text.
But... I can imagine my application. I must find a method that, with the
invoice.out file loaded into a control (say a memo or a rich text), permit
me to define, with graphic rectangles for example, the active positional
fields into the text file, and into another control (richtext) I can see
those fields in graphic to build the final form layout. To better understand
please give a look to the 2 linked images, they are taken from Reform
designer (www.fabsoft.com). The Text Layer is the text file editor where I
can define the positional fields. Once a field is intercepted by the green
rectangle, into the Design Layer this field is created and assigned to a
position. You can drag every field as you want to build the final layout of
the invoice. The external application now print not over the common printer
but over a pseudo printer (to be builded) with name INVOICE that take the
spool and transfer the text (all the text) over the invoice layout merging
them. The text that coincide to a positional field of the text layout (Text
layer) will be transferred to the corresponding field (same name) defined
into the Design Layer and the game is done. But it's not so simple...
Now, I'm novice in ReportBuilder and my answer is:
Can RB help me to do it?
Do you know about some library that can help me?
Do you have some ideas about a better solution to this problem?
Thanks for your courtesy.
Robert.
Its a mapping problem. Typically with a tool such as ReportBuilder you have
some structured data (database table or comma-delimited text file, or in
memory data structure) and you build a report layout that maps the data into
a document.
For an Invoice you typically have order and item information that is modeled
as a master / detail relation
order / items ----> Report Layout ----> Document output (preview, print,
PDF, etc.)
One solution for your application would be to translate the Invoice.out file
into structure data files. Once you do that the rest is simple with RB..
Invoice.out --> Order/Items data --> Report Layout --> Document output
--
Nard Moseley
Digital Metaphors Corporation
http://www.digital-metaphors.com
Best regards,
Nard Moseley
Digital Metaphors
www.digital-metaphors.com