![]() |
|
Published 1999-11-09 Printer-friendly version
I have decided that one of the truisms of programming is that every program starts off small and then proceeds to grow like a field of weeds as new features and requirements are added. For me, this unrestrained growth at the beginning is not really an issue, in that I can still keep all the necessary information about the application in my head as I work.
A major problem occurs once the app has reached a certain size, though; my brain does not share that same sort of infinite expandability (if only, if only...). The program becomes too large to comfortably wrap my head around there are simply too many bits.
What do I do? Documentation, i.e., make lists. List of fields, list of procedures, lists of files: the list of lists is endless and becomes another problem in and of itself. <sigh>
So, if the key to maintaining control over my applications is keeping control of my lists, then it becomes very handy to have tools that can help to sort, report and categorize all of the major components of my apps. If they can help keep control of the myriad of other little details like tool tips, messages, descriptions, pictures and so forth, well, so much the better.
Now, you know this all has to be leading somewhere, right? And you are correct. The subject of this review is a pair of complementary products from Nice Touch Solutions, makers of justly famous Wizard line of tools (the Query, Report, View, CrossTab and Spreadsheet Wizards). Aptly named the Dictionary Assistant (DA) and the Application Assistant (AA), these two products work together as a team to help you document, understand and keep control of your applications and their dictionaries.
Note that although I will be referring to the pair as if they are basically one product, they can be purchased and used separately (there is a discount if you purchase them together). On we go...
At their core, the Assistants simply expose all of the basic information about your dictionaries and applications in an easy to view and very flexible manner. You know the stuff I'm talking about it's hiding behind a million property sheets, tabs and buttons all through the Clarion IDE.
To quote Nice Touch, Dictionary Assistant is:
"...a query and reporting tool designed for documentation, analysis and quality control of Clarion Dictionaries. Through the use of an application Utility Wizard DA creates normalized databases representing the components of the application dictionary (files, fields, keys and relationships). This utility wizard is a non-invasive Clarion Utility Template and therefore not part of your application."
Couldn't have said it better myself (so I didn't try).
Substitute "Application" for "Dictionary" and talk about procedures, windows, reports, controls, templates and database file usage, and you have described the Application Assistant as well.
Both Assistants make heavy use of the Nice Touch Wizard products. Views can be modified and saved, reports can be created and saved, you can create and save queries on just about anything, and it is all done through a clean, consistent interface. (Nice looking, too.)
If you own TideStone Technologies (formerly Visual Components) Formula 1 ActiveX spreadsheet package, you get even more capabilities. Versions 4 and 5 of that product are fully integrated into both Assistants via the built-in Spreadsheet Wizard. Be aware, though, that if you don't own Formula 1 (F1), none of the spreadsheet related functions will work. (I'll be talking more about Formula 1 a bit further on.)
My installs went smoothly, auto-detecting where Clarion 5 was located. After I had installed the Dictionary Assistant, the Application Assistant install automatically found that folder as well, offering to install in the same folder so that the two products could share the same runtime files. Very painless.
There's really nothing else to do other than register the appropriate templates. Once you have done that, you can open an application, run the utility templates and then get right down to business.
I did discover one issue when using the Utility templates related to long path names (short pathnames or names without spaces worked fine out of the box). It seems that the Assistants are not accounting for spaces in a long filename path when they are started using a command line parameter (which is the way the templates start them). Since they are using the Clarion Command() function to retrieve the filename from the command line, I found in the LRM that my long filenames/paths would need to have double quotes around them to keep them from being regarded as multiple parameters separated by spaces.
I edited two lines in each of the Utility templates to add double quotes around the file parameters, and after that everything worked fine no matter what the folder path was.
The process of running a utility template to export my dictionary or application information was fast and smooth. The templates fire up DA or AA at the end of the export wizard, so you are dropped right into the appropriate Assistant with the latest information.

It is not necessary to select files individually, either. There is a simple checkbox to Analyze all files which I could have used, but I wanted to show a bit more of what the export wizard looks like.
From here on out I'll be referring quite a bit to the various Wizard tools used by Nice Touch to build these Assistants. As much as I'd love to show you lots of pictures, you'd probably hate me for the amount of time it would take to download them. On top of that, images of a wizard only show you one set of options (one tab) out of many. As a compromise, I highly recommend that you visit the Nice Touch Solutions web site, where you can download demos of most of the Wizard products at your leisure. Sorry there are no demos of the Assistants, although you can download the help files (lots of pictures there).
DA has two basic modes for viewing. The first, called Worksheet mode, has four list boxes that are tied together by a Files list. As you move around the list of files, the other three lists display all fields, keys and relationships for the selected file. The second mode is more free-form, and lets you browse lists of files, fields, keys and relationships in individual list boxes that offer an expanded range of Wizard options. You can run queries using Query Wizard, reformat the view using View Wizard, create custom reports with the Report Wizard and more. For quick and easy Dictionary printing, there is a very simple two-step Print Assistant as shown in Figure 2.

Notice the option to reset the page numbers after each file. I really like this feature as it lets you keep a binder full of file definitions without having to worry about page numbering. Each file is sufficient unto itself, so to speak.

This figure shows the options from the 'Elements to Print' tab shown in Figure 2.
Printing deserves a bit of a special mention here. I've always had this theory that the person who wrote the built-in Clarion Dictionary print routines must own stock in a paper company, as they are not only rather awkward, but they are incredibly wasteful as well. Both DA and AA come with a large number of very nicely laid out and useful reports right out of the box. And since you can create, modify, copy and save your own custom reports, you can easily whip up just about any kind of listing you can think of. Add to that the ability to filter any report using the Query Wizard, and you will begin to see just how flexible these tools can be.
AA functions almost identically to DA. It lists different types of information, of course, but the similarities make it very easy to pick up after you've used DA for little while. To illustrate just how useful a tool like this can be I'll illustrate with the stock C5 Maillist example. Figure 4 shows the Controls browse listing.
Note how easy it is to spot errors and omissions: there are two misspellings in the Messages column, and the Add buttons don't have accelerator keys. Imagine how long it would take you to track down those errors if you had to go procedure to procedure, window to window, control properties to control properties, then tab to tab. Yow! These are not errors that I created for the review either. You can go ahead and track them down yourself if you want to spend the time.
Also, be aware that you can sort on any column in every Assistant browse like the one in Figure 4 just by clicking on the column header. You can also drag and drop columns to rearrange the column order.
Being the curious kind of person that I am, I just had to try out the spreadsheet-based options in the Assistants. After a bit of scrounging around, I found a demo of F1 version 5 and installed it. Sure enough, I could now view and manipulate my information directly in a spreadsheet. What was really neat about the Spreadsheet Wizard, though, was the ability to save my information directly into a number of popular formats (including HTML), as shown in Figure 5.

Nice Touch also has a third Assistant, designed for viewing and printing Embed code. The Embed Assistant, though, is freeware, and can be downloaded at no charge from the Nice Touch web site. It doesn't have all the bells and whistles that the commercial products have, but I still found it to be quite handy.
Documentation is supplied as Windows Help files, and I must say the files are very nicely done. Well organized, clearly written, and with an abundance of screen shots, they make it easy to learn about the programs.
I did find one rather glaring oversight, though: asking for help in the Application Assistant brings up the Dictionary Assistant help. You have to run the AA help directly from Explorer or via the Windows Start menu option created by the installer.
For the most part, though, the programs are very easy to use. If you are already familiar with how the Wizard line of products work, you'll feel right at home in no time at all.
Support is provided via the Web, Email and fax. In emailing Nice Touch regarding the few issues I came across, I invariably found the company to be both responsive and polite.
I'd have to say they live up to their name.
There are a number of little items that I found myself wanting while using the Assistants. Some are related to program use, such as wishing that the programs would remember what I was last working on, and open those files by default at startup. Another was to have the first column of some of the wider browses fixed on the left side, so that when I scroll horizontally there is no chance of losing my place (for example, the name of the field currently selected scrolls off the screen).
I also think that the programs should be a bit more informative as to what you can and cannot do. As they stand, they allow you to go through all the motions related to spreadsheets, right up to the point where you say "do it." At that time, though, nothing happens no error (that's good) but also no message saying that you can't do this without Formula 1 (that's not so good). It would be nicer if they told you right off the bat that the function wasn't going to work.
Both of the Assistants incorporate the Nice Touch Spreadsheet Wizard, a tool that interfaces with the Formula 1 ActiveX Spreadsheet control from Tidestone Technologies. All is not roses in spreadsheet land, though. According to Nice Touch, Tidestone changed from a royalty-free pricing model for their older versions (4 and 5) to requiring user licenses for the newer version 6.x of F1. They (Nice Touch) have not yet fully integrated 6.x into their current products due to questions about licensing. Please note that no matter what the version is, F1 is not included with the Assistantsit must be purchased separately.
If you don't have one of the older versions, or can't find a trial version, you can download a 30-day trial of Formula 1 6.1 and use it with DA and AA (or your own Clarion programs, for that matter). Before you try, though, I'd recommend contacting Nice Touch and seeing what the current state of F1 support is. It may require some tweaking on your part to get 6.x to work.
How much does F1 cost? I found it for about US$86.00 on the web, and that also includes the bundled First Impressions charting control. That is for a version 6.x license, though, so you would need to buy additional licenses if you want to use F1 inside your own programs (as opposed to just using it with DA and AA). The older, royalty-free versions (4 and 5) listed for between $250 and $300, if you can find them.
Each of the four components mentioned in this review is a standalone product, but as you begin to combine them, their usefulness increases exponentially.
The combination of the Dictionary and Application Assistants is really useful, and a worthy addition to any serious Clarion user's toolbox. Adding the Formula One spreadsheet raises both of them to another level, although it's a shame that there is the current uncertainty regarding supported versions. Toss the free Embed Assistant into the mix, and you've got a very powerful and flexible combination of Dictionary and Application reporting tools.
Nice job, Nice Touch!
Overall
![]()
![]()
Ability to do the task: Very Good
Ease of use: Very Good
Ease of installation: Good
Documentation: Good
Technical support: Very Good
Black box DLLs/LIBs: N/A
The Dictionary and Application Assistants can be purchased directly from Nice Touch via Telephone, Electronic Mail, Fax or Mail. Each Assistant lists for US$79, but you can also purchase them together as a bundle for US$129.
Sales Information, demos and more can be found at the Nice Touch Solutions web site:http://www.clariontools.com/Default.htm
For more information on the Formula 1 ActiveX control, visit: http://www.tidestone.com
Dictionary Assistant was originally developed to produce elegant dictionary documentation, suitable for delivery to large corporate and government contract clients. Over time we have decided to more fully expose the entire dictionary hierarchy. This "exposure" has aided our development efforts by providing a better foundation for beginning our application development (a strong dictionary).
We soon discovered an Application Assistant would provide a means for automating a significant portion of our quality control process. For example, the Exception Report within AA confirms the application represents the dictionary design. If we specified an @S30 in the dictionary and an entry form is using @S20, AA will tell us this before the client does! In a nutshell, AA's Exception Report produces a list of discrepancies between the Dictionary and Application.
A longtime Clarion user, Tom Hebenstreit is an admitted tool junkie who refuses to go straight and code without his arsenal of third party products. During those rare moments when he isn't either using or writing about Clarion, he indulges his twin passions for blues and beer by performing around Southern California in a variety of totally-obscure-but-famous-any-day-now rock and blues bands.
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
One year: $184
(includes all back issues since '99)
Renewals from $134
Two years: $274
Renewals from $224