![]() |
|
Published 1998-05-01 Printer-friendly version
I've been anticipating the release of this product for quite a while, as it represents one of the first template sets that really takes advantage of the new ABC class libraries introduced with Clarion 4 (C4). As these libraries are purported to be the current and future direction for Clarion, I was (and am) very curious to see real world examples of how they help (or hinder) the templates and other third party products which so many of us rely on.
Before we begin, though, it should be noted right off the bat
that Xplore for C4 ABC means exactly that. It only works with C4
and with the ABC templates, not the Clarion templates (the CW 2.003
compatible template chain) and not with CW 2.x or earlier.
[Note: DataMatrix still offers the original Xplore templates for
CW 2.x - see the note at the end of this review for more
information about them.]
So, what is Xplore for C4 supposed to do? In the broadest terms, it allows to you to give your C4 browses most of the standard features of lists boxes used by the Windows 95 Explorer and many other Win 95 programs (hence the name); for example, the ability to sort any column by clicking on the header, and/or to rearrange the order of the columns within the list on-the-fly.
What's more, Xplore puts virtually every property of a list box at your fingertips (and more important, at your user's fingertips) at runtime, i.e., when your program is actually running.
Interested? Well, so was I -- I had seen the promises, and now I finally got the chance to see if it lived up to the advance billing. Come on along, and let's find out
These are the major features of Xplore for C4 ABC, as put forth by DataMatrix:
Whew! What a list. See why I was so interested in Xplore?
Oh, and want to turn off all those features? Simply remove the Xplore browse extension template and you'll be back to the standard TopSpeed browse. Of course, I don't know why you would want to do that, but hey, it's nice to know you can.
Xplore was provided as a self contained EXE which installed the various component files into the appropriate Clarion4 subdirectories. After installation, it was necessary to manually register the templates in C4. All in all, nothing fancy but no problems either.
Implementing Xplore is about as easy as it gets.
The first step in adding Xplore to your C4 ABC application is to add the Xplore global extension. This extension sets up Xplore for use, and is also where you specify your overall default Xplore settings. All of the global options can be modified at the procedure level as well, so it is easy to create your overall feel with the global extension and then customize it as needed for any specific browse.

Once the global extension is in place, you can now add Xplore to any browse box simply by doing the following:
You (in other words, your users) can now shuffle, hide, resize, re-sort and otherwise manipulate virtually every column and property of the browse at runtime by either dragging things around with the mouse or via right-click menus. Did I mention that this is really easy? And WAY cool?
I also liked the level of control you have as a developer over just which options are made available to the end user. Don't want the user to be messing with your colors, fonts, header text, justification, line height and so on? Fine. Just click on a few template checkboxes to turn them off and -voila- they no longer appear on the Xplore right-click menus. You can also switch many of the options on and off under program control at runtime - an example might be where you allow certain features to be enabled based on a user's security level. Implementing this last capability does require a bit of hand code, though.
Be default, every column on an Xplore browse can be sorted in either ascending or descending order just by clicking on the column header. But while it may be amusing to be able to, for example, sort people by their middle initial, it is not really very useful - particularly since it is highly unlikely that you have a key defined for that field.
This brings us to one of the areas that you would need to consider carefully when adding Xplore to a browse: how many records do you expect there to be in the file which is being browsed? Remember, if there is not a pre-defined dictionary key for a particular column, the C4 View engine will need to build a temporary one before it can re-display the browse in the new order. If you are browsing a file with a lot of records, this could add up to a significant delay between clicking on the column header and seeing something happen on the screen. Inevitably, the longer the delay, the more likely it is that your users are going to decide that the program has 'locked up' and do something drastic like shut down your program (or worse).
Fortunately, Xplore lets you turn off sorting on a column by column basis at development time. You also have the option of either having a message displayed when the user clicks on a non-sorting column header or simply having nothing at all happen.
In setting up Xplore to use with a large file, however, I found that I would like to have a way to easily turn off column sorts for the entire browse and then activate only those columns that I did want to sort on. Currently, all columns are by default enabled and you need to turn them off one by one in the template. Again, this is only really a hassle if you have quite a few columns and want to limit on-the-fly sorting to just a few of them.
One final point I would like to touch on is in relation to the common practice of using tabs to switch from key to key in a stock C4 browse. How does that work out if Xplore can sort and re-sort the columns at the user's whim? Very nicely, thank you. Xplore will automatically use whatever filters or ranges are set up for each tab, while giving the user the ability to use the on-the-fly sorting feature within those pre-defined filters.
Additionally, it can be set up so that the tabs (and sheet) are hidden and that clicking on a column header causes the associated tab to become the active one. The benefits of this are two-fold. First, it makes for a very clean and simple interface. Second, within that apparent simplicity you still retain all the power of being able to define multiple keys, filters, locator types and so forth which the 'one tab per sort' methodology provides.
Xplore in action was quite snappy. It was also very easy to use since it basically made the C4 browses act the way most people expect a Windows list box to work. If you keep in mind that balance between file size and non-key sorts, my Xplore browses worked just like the standard C4 browses. Oh yeah, except that they were completely customizable, infinitely more flexible and actually fun to use (never thought I'd be saying that about a browse, though!).
In fact, probably the biggest danger you may face is that your users will spend all of their time tweaking their browses instead of using them (just kidding!). And, if they get themselves to the point where the browse is a total mess, DataMatrix was thoughtful enough to provide both a hot key and an option on the right-click pop-up menu to reset the entire browse back to its default settings. Kind of a panic button for browses.
On a more serious note, having the ability to rearrange, resize, hide or even add columns, and so forth is really nice. Most importantly, having the program automatically remember all of those setting is really, really nice. I don't know how many times I've had users request those features, and now Xplore makes it a trivial process to provide them. (Believe me, though, the code behind Xplore is NOT trivial!)

On top of the features Xplore adds to the browse itself, there are bonus 'output' options that were totally unexpected. There are three of them, accessed from the 'output' choice on the Xplore right-click pop-up menu:
Again, none of these options required any effort whatsoever on my part. They simply appeared when I added Xplore to the browse.
Special Note: After the review was finished, Brian Staff (the author) pointed out that Xplore allows you specify preview or no preview for the instant reports simply by setting a property for each type. What I was seeing was that single page reports default to no preview, while full browse reports default to previewing. He also pointed out that Xplore will try to intelligently size the report font to ensure that all columns will fit on the page. Oh, yeah, and you can specify the minimum and maximum font sizes it will use while doing that via simple property assignments. Yowza! It makes me wonder what else is hidden in there and that brings us to
Sigh. It is fortunate that the Xplore templates are so easy to use, because this is another case of a great product being hampered by not-so-great documentation. All the documentation is contained in a Windows Help file and, while it is reasonably informative, it definitely needs some proofreading and polishing. In particular, the more advanced options relating to how multiple tabs can be used in conjunction with Xplore could use a better explanation. (And how about that list of properties and methods?)
A demo is available for download, which does a decent job of covering various options and letting you become familiar with how Xplore operates. The demo program app file is not included with the product itself, though, so you don't get the chance to see how the more advanced Xplore options were actually implemented by the author (an oversight which I hope will be corrected in a future release).
No printable documentation is provided other than a 'readme' text file that details which files should go where, and lists the Xplore feature set.
Technical support is provided via Internet email and on the CompuServe TopSpeed Forum in the Third Party section. My questions were generally answered within 24 hours, and DataMatrix seems dedicated to actively developing and improving the product on an ongoing basis. The author, Brian Staff, is a long time member of Team TopSpeed.
Most of the ABC compatible products I have seen so far are just that - compatible. By that I mean that, yes, they work with the ABC templates but they don't really utilize the underlying ABC class libraries. As I stated in the introduction, though, Xplore for C4 is one of the first products I've seen that is really integrated with the ABC templates and class libraries.
Is it powerful? You bet. Simple to use? You got it. Is it perfect? Well, not quite - but it is the supporting materials, such as the documentation, that need the work, and DataMatrix was working on them during the course of the review. Xplore itself is an extremely impressive piece of work, and the extra features like the instant reports are a knockout.
I must stress again, however, that Xplore for C4 works ONLY with the ABC templates. Also, due to that tight integration with the ABC class libraries, I wouldn't expect a C4 Clarion template version of Xplore. If you are an ABC user, though, or just thinking of using the ABC templates, I highly recommend that you download the demo and take a look at it.
To sum up, this is one product that is so good that it could actually drive the choice of which template set to use in a C4 application (ABC or Clarion).
| Category |
Product Score |
| Ability to do the task |
Excellent |
| Ease of use |
Very Good |
| Ease of Installation |
Good |
| Documentation |
Fair |
| Technical Support |
Very Good |
| Modifies Shipping Templates |
No |
| Black-Box DLLs/LIBs |
No |
Xplore for C4 ABC lists for $249.00 US, and is available from the following sources:
- Direct from DataMatrix (see http://ourworld.compuserve.com/homepages/BrianStaff)
- Via CompuServe SWREG #16652
- From BMT Micro via the Internet (http://www.bmtmicro.com)
The Xplore demo can be down loaded from the TopSpeed forum on CompuServe or from the ftp.bmtmicro.com FTP site - XploreC4.ZIP (600k)
Special Note for CW 2.x users
DataMatrix is still offering the original CW2.x version of
Xplore for the price of $79.00 US. According to them, it LACKS the
following features that were added for C4:
It does, however, offer the basic functions such as multiple sorts and the ability to rearrange the columns, etc. For more information, contact DataMatrix via their web site (listed above) or via email: BrianStaff@compuserve.com.
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