Report Builder - by Fomin
Posted March 1 1999
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.
Article comments
Post a comment
You must be logged on to post comments.
Talk To Us!
Search ClarionMag
From the archives
Sending Clarion Reports as Email Attachments (Part 1)
1/9/2001 12:00:00 AM
The email capability in version 5.5 is a nice addition to the Clarion toolset. What is still missing however, is the ability to easily send a report as an email attachment. In this article David Potter demonstrates one possible solution to this problem. Part 1 of 2.
