Click here for Adager Sponsor Message

NewsWire Test Drive: The Adager Date Functions

Rx For The Year 2000 Problem

Review by John Burke

Are you wrestling with it? You've been reading about it seemingly everywhere. The next millennium is upon us and it is known to IS people the world over as The Year 2000 Problem (TY2000P). In simple terms, what this means is that most systems written before about 1990 made provision for only a two digit year (e.g., 96 to refer to 1996). This was fine unless you had to use a year greater than 1999. What does 10 mean? 1910? 2010? In any standard sort, 10 is going to come before 99. If 10"represents 1910 then this is OK. But, if 10 represents 2010, then you have a problem. Whole consultancies have emerged over the last two years that, for a large fee of course, promise to help companies deal with TY2000P. I've even received notice of conferences devoted exclusively to The Year 2000 Problem.

For those who have to deal with it immediately, TY2000P may mean cold sweat and sleepless nights. Others, don't worry at all because they figure they will be gone to greener pastures (i.e. new jobs) long before it really becomes a problem. The vast majority of us, however, are probably caught somewhere between these two extremes. We know we are going to have to do something soon and are in the process of planning what to do with our databases and programs.

Fortunately, just when we need it, along come the friendly folks from Adager Corporation with enhancements to Adager that handle the IMAGE/SQL database restructuring and the content modifying necessary to solve TY2000P at the database level. Thanks to Adager, all we have to worry about now are the programs.

What Is Adager?
First some background. Adager, the ADApter/manaGER for IMAGE databases from Adager Corporation of Sun Valley, Idaho, lets you adapt and manage database objects such as capacities, items, fields, paths, etc. - probably anything you can think of. (Certainly anything I can think of.) It has been available worldwide since before most current HP 3000 users saw their first HP 3000. And it has been continuously enhanced. I remember around 1980 presenting my plan to management to buy a software utility called Adager from a little company in Guatemala (where Adager had its roots) -- they initially looked at me like I was crazy. Fortunately, then as now, Adager sells itself. It makes structural changes in minutes that would take hours or even days using DBUNLOAD and DBLOAD.

Of course, Adager supports all the new HP database technologies for IMAGE such as Dynamic Dataset Expansion (DDX), Jumbo datasets (since 1995) and Third-Party Indexing (TPI). Adager automatically takes care of synchronizing your IMAGE/SQL databases and any DBEs to which they are attached when making ANY changes including date. With Adager, you do not need to detach your database manually, make your changes, and then re-attach the database -- a potentially lengthy and error prone process. Adager does all this automatically and transparently. Quest Software's NetBase and Adager combine to support the automatic replication of all Adager transformations to databases or systems mirrored by NetBase (as well as the version of NetBase sold by HP, SharePlex).

Date Morphing
The latest version of Adager contains two new functions, "Examine Date" and "Change Date". These two functions are what I want to look at in more detail in the rest of this article.

"Examine Date" validates your date information under a variety of source date formats. It produces an exhaustive report of potential problems with the CONTENT of your date fields. Adager strongly suggests you always use "Examine Date" before attempting any changes via "Change Date". The program warns you that you must fix any problems reported by "Examine Date" via Query or application programs before attempting to use "Change Date". Unless "you like the default values to which I convert them". The Adager program, to the best of my memory, has always communicated with the user in this first person manner. I usually imagine I am having a dialogue directly with Alfredo Rego, the original developer of Adager and, apparently, still the chief programmer since he uses the title Adager Lab Manager and always refers to himself as a programmer.

"Examine Date" logs all dates that meet user defined exception criteria such as null, zero and blank as invalid. If you have what Adager calls "overloaded" date values, you can ask the program to accept them. You can also log all dates either included in, or excluded from, a given range. Overloaded date values are special values that are obviously illegal dates but which mean something to the application; e.g. a month value of 0 or 13, blanks, asterisks or binary zeros in place of the date. By default, Adager rejects all such illegal dates. However, Adager allows you to specify which of these special values you wish to allow and which type of conversion you want to apply, if any, when you eventually "Change Date".

As source data, Adager supports a variety of common and proprietary 2-byte, 4-byte, 6-byte, 8-byte and 16-byte date formats (currently at least 35 -- others will be added as needed). Proprietary date formats supported include Powerhouse, MM/3000, HP Calendar, SRN's Chronos, ASK's MANMAN and HP's Allbase/SQL 128-bit format.

"Change Date" allows you to convert existing data into formats that support the years beyond 1999 (currently at least 16), making all necessary structural and content changes. Adager automatically rehashes masters with changed date search fields and updates any associated DBEnvironments. As an example of its flexibility, Adager allows you to specify a threshold value that will define a destination century of 19 if the year component of the source date is greater than or equal to the threshold value and 20 otherwise. You can even use Adager to convert dates from a sort-unfriendly format to a sort-friendly format while enhancing the year information. For example, Adager will convert values in ddmmyy or ddmmyyyy format to the sort-friendly yyyymmdd format.

The Test Drive
I tried out "Examine Date" on several of my production databases that contained X6 date fields in the YYMMDD format. Blanks were valid for some of the fields. To my surprise, Adager discovered one invalid date in one of the databases. Hmmm. Wonder how that happened?

To better test some of the date functionality, I created a small database with six different date formats, all specified as search items. I then loaded it with test data (2500 entries that had interpreted values ranging from 1/1/1995 to 12/31/2001 and that also included some invalid dates) and went to work. The Adager dialogue from the tests is too "rich" to include here because of space. As always, Adager handled its chores in a lightening fast manner.

In generating my test data, I was not terribly careful about such things as leap years. Adager pointed out correctly I believe that the year 2000 is not a leap year by flagging February 29, 2000 as an incorrect date in all my date formats that explicitly defined month and day. Pretty neat. Not because you are likely to have such a situation, but because it shows that Adager has tried to take into account all possible date permutations, not just the probable ones.

In one of the test runs, I started with a sort-unfriendly ASCII date field (X6) formatted as MMDDYY and converted it to a sort-friendly ASCII date field (X8) formatted as YYYYMMDD. Adager asked me for a cutoff value to determine if, for example, YY=10 meant 1910 or 2010 before actually performing the transformation. Adager also handles automatically YY values where the leading character is alphabetic such as in MM/3000.

Both the detail and master sets were altered to accommodate the expanded item, the content of the field in each record was transformed and the master was re-hashed all in less time than it takes to read this paragraph. Obviously, if your database contains several million records instead of several thousand, Adager will take longer. However, I've never known anyone who was not surprised at how fast Adager performed even the most complex database transformations. It is truly remarkable.

Conclusions
As has been its practice since the late 1970s, Adager is ready with the tools system managers and database administrators need to manage their IMAGE databases, often before we even need them. Adager now sends a manual with the product, though it is mostly to list and briefly describe all the features. Adager has used "wizard" technology to guide you through structural changes long before the "wizard" concept appeared in PC software.

"Examine Date" and "Change Date" represent something of a new direction for Adager since these functions deal with content as well as structure. For anyone facing the need to update systems to properly handle dates beyond the year 1999, this latest version of Adager will save you from countless hours writing little specialty programs to convert your existing dates. And you would still probably need a database restructuring tool anyway. Adager does it all for you.

John Burke is a longtime HP 3000 columnist and contributing editor to the 3000 NewsWire, editing our net.digest column. John has 18 years experience on the HP 3000, works as systems manager for Construction Computer Center, and can be reached at tcdn96a@prodigy.com.


Adager
Adager Corporation
Sun Valley, Idaho USA 83353-3000

800.533.7346 (US and Canada)
208.726.9100
Fax: 800.247.7346 (US and Canada)
208.726-8191
E-mail: support@adager.com

Adager lets you adapt and manage database objects such as capacities, items, fields, paths, etc. The latest version of Adager contains two new functions, "Examine Date" and "Change Date" to deal with The Year 2000 Problem.

Adager automatically and transparently synchronizes your IMAGE/SQL databases and any DBEs to which they are attached while making any changes. NetBase and Adager support the automatic replication of all Adager database transformations to mirrored databases or systems.

Adager runs on virtually any HP 3000 (CISC and PA-RISC) under any version of MPE from MPE III to MPE/iX 5.5 and supports IMAGE/3000, TurboIMAGE, and IMAGE/SQL. Adager comes in two versions. Model One, which contains the basic functions such as capacity change, costs $2,000 for an initial system license with a $300 yearly maintenance fee. Model Two, which adds the advanced features including date manipulation, costs $6,500 for the initial system license with a yearly $1000 maintenance fee. There is a 70 percent discount for additional CPUs and 100 percent credit for previously paid license fees when upgrading from Model One to Model Two. Adager has never charged extra when you move from one HP 3000 to a larger one (even CISC to PA-RISC). Complimentary trial tapes are available upon request (note: the trial version has "Change Date" disabled for obvious reasons).


Copyright 1996, The 3000 NewsWire. All rights reserved.