Report Builder - by Fomin
by Shawn Mason
Published 1999-03-01
Printer-friendly version
Reports. Reports. Reports. To a programmer's ears, it seems like this word
should have only four letters. How many independent developers have had to eat
many hours because of a report or two? If there is one trouble area in estimating,
it would have to be here. Unless you have exceptionally detailed specs, an end-user
can easily detail you to death with the nit-picky aspects of a report. Things
like, "move this over 3 spaces", or "can you make this bold". While this can
be a source of contention for programmers, it is the right of the client to
want the reports to look perfect. After all, most users want a system only for
the reports it can produce; therefore, it is our job to produce exactly what
they want. So, how do you give the user the nit-picky details he needs while
not making him furious for charging him to make a particular heading Italics?
Simple…use an end-user reporting tool like Fomin Report Builder (FRB).
Major Features
FRB works with both ABC and legacy templates. Here is a list of
supported features from their documentation:
- 16- and 32-bit support, including support for the "Local"
application model.
- Support for 3rd party report previewers such as
CPCS.
- Support for Long File Names (Clarion 4/5 32 bit only) .
- Print dialog (number of copies, pages, printer/file selection
and other parameters) before printing.
- Simultaneous processing of several data tables joined in an
integrated structure (VIEW structure).
- Effective and high speed filters for records using any
available fields from the table of VIEW structure, including
expressions and functions of the Clarion language. Use functions
such as Sum, Counter, Average, Minimum,
Maximum, Evaluate on each record, at the end of a
sorted group, or at the end of page; reset at the end of sorted
groups or at end of page
- Sort data using any available fields from the VIEW structure,
including expressions and functions of the Clarion language.
- Built-in Report Formatter support for the following report
sections: Page header, Report header, Group break, Group header,
Detail, Group footer, Report footer, or Page footer.
- Frame contents may be a text string(s), or a formula. Contents
are placed and aligned both vertically and horizontally. Contents
may be formatted in accordance with a defined Picture.
- Frame borders may have varying thickness, color and fill.
Finally, you can select several Frames for repositioning or group
operations.
- Select fonts at the report, section or frame level.
- Efficient formula composition using Dictionary, including
support for arrays of variables at the Dictionary level (up to 4
dimensions).
- Wizard style dialog easily builds a Picture of any type.
- Foreign language support (Support of English and Russian is
built-in with respective documentation. Support for other languages
is provided through a translatable FRB_NLS.INI file).
- Built-in capability for user-defined functions in the report
evaluate expressions.
- MDI and SDI application support.
Hot Off the Presses
Fomin announced a new version (v2.0) during the writing of this
article. A few of the added features are:
- Support for Report and Presentation Manager, RPM2-RPM4-RPM5,
from Lodestar Software (latest ABC for C5 release). This one was
important to me since RPM has by far the slickest interface for
report previewing.
- Support for Query Wizard from Nice Touch Solutions.
- Ability to export report pages via DDE to Microsoft Word in WMF
format. Then the report can be viewed, printed, saved as *.DOC,
etc., or even emailed.
- Ability to place an Image with vertical and horizontal
alignment inside a Frame as well as stretch/shrink an Image to
Frame size (either horizontally and/or vertically)
- FRB run-time Dictionary will now inherit your field pictures
from the Clarion dictionary. This picture will be used as the
default when placing the field on the report.
- Support for Metric system (inches as well, of course)
- Ability to customize default properties of a new Frame
- Allow end-user to adjust actual size of report controls and
even report pages for any printer, such as Laser, Matrix, etc.
Installation
FRB comes in a self-contained installation EXE. I downloaded my
version from their Web Site. Upon starting the installation, the
first thing I noticed was the option to choose which language you
wished to use. Your options are English or Russian (the native
language of the author). You also have the option of installing the
CW20, C4, or C5 versions as well as an example app and the
documentation (Word Format). After choosing which options you wish
to install, you are again asked which interface language you wish
to use. Your choices are English, Russian, Spanish or other. About
this time I'm beginning to suspect that this product is
internationalized. Since I'm ignorant of Russian and Spanish (and I
don't think New Testament Greek is an option), I choose English. To
complete the install you must put in the User Name, Company Name,
and the Personal Serial Number received when you purchase FRB. I
wasn't too keen on it wanting to place the example application
under my root directory, so I put it where every good installation
(ouch!) places their examples…under the \clarion5\examples
directory. Upon completion of the install, I am left looking at the
help file. An automatic template registration would be nice.
The help file is well organized. I especially like the Principle
of Operation section. One thing that I feel is left out of most
third party documentation is an explanation of the paradigm the
programmer is coming from. Once a paradigm is understood, it makes
using the product much easier.
Concepts & Interface
It is clear from the documentation that FRB was created as an
end-user product. According to the help
manual…"FRB…is an accessory tool for Clarion for
Windows. It is an easy-to-use-full-functional instrument for
creating, printing and managing graphic reports. FRB is designed
for the end-user and can be included in a Clarion for Windows
application as a dynamic link library (DLL) or a local library
(LIB)." (English corrected)
Each report is stored as a separate file. The programmer
designates the names of the fields that will be available for the
end-users reports. The report designer resembles most report
designers that I've seen in the past. It has all the necessary
tools to place fields, use indentations, alignments, frame borders,
line splits, fonts, etc. A shot of one of the example reports is
below:
Part of an FRB Design
Window
This interface even allows for the end-user to create total
fields on the fly. They can choose between Sum, Counter, Average,
Minimum, Maximum and Evaluate. Certain sections may be suppressed
as needed based on a logic expression. Using this, the end-user may
suppress all the detail bands and print only the group footers to
have a summary report. Overall, it contains most of the things an
end-user would want or need to create his/her own reports.
Adding FRB to Your Application
After registering the template, you must add the Global Extension
template to your application. The Main Frame procedure also needs
an extension template. You must then logically create report groups
for the end-user. For example, you might create a group called
Orders where you would specify which files are available to the
end-user when he creates reports in this area. You might also
create a group entitled "Inventory Items" where you would place the
"items" file and any related files in this group. When the end-user
goes to this section to create an "Inventory" Report, he/she can
only choose from the "items" files and/or any related files. This
logical grouping should keep the end-user from being overwhelmed by
a huge number of files/fields to choose from. Each group you create
will have its separate procedure and is based on a tree structure.
The structure will show what reports in that group are available.
An example is below:
FRB Report Listing
Window
From here, anyone can print a report, add a new report, change a
report, or even delete a report. The end-user sees this screen and
knows intuitively that if an extra report is needed on the
Inventory Card section, this is the place to do it. He/She will
click the insert button and see the design screen (Figure 1). The
files and fields he/she can choose from relate only to this
category; therefore, making a mistake or becoming massively
confused can (almost <g>) be eliminated.
Distribution
There are no run-time royalties with FRB. You may purchase it once
and distribute it with your applications as often as needed. If you
really want to give this template a whirl, you can download the
free version 1.5a for use with CW20.
Documentation
As I mentioned before, the documentation is available in either
Russian or English. It comes as both a help file and a word
document. Be warned though, the author's native language is
Russian, not English, although I did find the manual to be readable
in its English version. The word documentation has both a Table of
Contents and a Glossary; something that a lot of third party
developers do not bother with.
There are even explanations on how to integrate the package with
a third party previewing tool (like Lodestar Software's Report
Presentation Manager or CPCS Reporting Tools previewer). This is a
nice thought since there might be a few reports that a report
writer like Fomin's cannot handle and you are forced to hand code.
This gives your interface the same look and feel.
Technical Support
There are several ways you can contact the author for technical
support. He gives you a web page, email address, and even a phone
number (although you must make sure you get your times zones right
- he is in the Ukraine). I found the replies and information from
the author to be right on target, as well as fast and courteous
(even counting for the time zone differences).
Summary
Overall, I think Fomin Report Builder is a good tool for situations
where the end-user is constantly pecking to "change this little
thing", or "add this report". It will definitely extend the life of
your application. The implementation is not difficult and the
concepts are well thought out. If you are looking for a replacement
for the Topspeed Report Writer, then FRB might just do the trick.
Its interface is similar, capabilities are similar, but FRB gives
you the advantage of placing the end-user "in scope" with what data
they need to create the inventory report, or the personnel report.
Better yet, FRB is royalty free while Report Writer will cost you
per user (if the end-user wishes to modify the report, that
is).
| Category |
Product Score
|
| Ability to do the task |
Very Good
|
| Ease of use |
Good
|
| Ease of Installation |
Good
|
| Documentation |
Good
|
| Technical Support |
Excellent
|
| Modifies Shipping Templates |
No
|
| Black-Box DLLs/LIBs |
Yes
|
Fomin Report Builder v2.0 sells for US$ 249. It can be purchased
through TopSpeed Sales (1-800-354-544 or directly from the author
at frb@grain.crimea.com.
Information, demos, the free CW 2.0 version (v1.5) and more can
be found at Fomin's website: http://www.chat.ru/~frb.
Printer-friendly version

Copyright © 1999-2008 by CoveComm Inc. All Rights Reserved.
Reproduction in any form without the express written consent of CoveComm Inc.,
except as described in the subscription
agreement, is prohibited.
Clarion Magazine ISSN 1718-9942