Classic Computer Magazine Archive CREATIVE COMPUTING VOL. 9, NO. 3 / MARCH 1983 / PAGE 136

Foolproof, flexible database management. (evaluation) Rodney O'Rourke.

Foolproof, Flexible Database Management

My search for a database management system (DBMS) began about three years ago when I realized that bringing personal computing into my day-to-day business life could make me more efficient and my business more profitable.

As sales representative for the eastern region of a major company selling paper products--a highly competitive business--my job entails a lot of customer record keeping: competition, contracts, calls, customer facilities, and a myriad of other details.

After deciding on an Apple II because of the vast amount of software available for the machine, I studied most of the database management systems available and finally settled on the Data Factory from Micro Lab. I am not a programmer, and I don't want to be a computer expert. My use for a computer is straightforward: I want it to assist me in the performance of my job, make me more efficient, and help me serve my customers.

I have never regretted the choice of Data Factory. First, it is a truly friendly and virtually foolproof program that provides me with the power I need. Second, it was at that time, and still is, the most fiexible DBMS available for a small computer. Third, when i signed my first licensing agreement, I found that I had bought people and support as well as software.

Data Factory has allowed me to design my own record-keeping system without becoming a programmer or learning what amounts to a new computer language. But it goes beyond that. Data Factory also allows me to manipulate the data in the base in several unique ways and to produce reports customized to my specific requirements. Finally, the sophisticated math package which is an integral part of Data Factory lets me massage the figures in ways that approach some of the well-known spreadsheet programs.

Extended Warranty

Data Factory is a single program which includes a first-year "extended warranty' against destruction of the program disk (you get two identical copies of the program disk which cannot be copied). The extended warranty provides for replacement of a damaged or destroyed disk any time in the first year and also provides you with any updated versions that might be issued. I started with Version 3 and recently received my latest copy, Version 5.0, automatically under Micro-Lab's policy, which costs $30 annually after the first year.

In addition, data files developed under older versions of Data Factory are still compatible with the newer versions, and can be accessed through Basic, which is not the case with some competitive products. The features in each new version are worth many times the cost of the warranty.

Data Factory can be used with a one-drive system, but it would be clumsy and slow, as is the case with most such programs. My two-drive 48K Apple system uses an IDS 560 printer which I chose for its high speed and 220-column print output. But the features of the software program itself are what make that hardwere useful. While some other computer manufacturers have built bigger, faster, and more sophisticated machines than the Apple, no one has built a machine that is more flexible or easier to use.

Special Features

Those features of Data Factory that I particularly like include a menu-driven start-up routine that asks you a series of questions about the database you wish to design. After selecting a name for the file, you are asked how many fields you wish to specify in each record, up to a maximum of 88. Each field may be any length up to 239 characters long. You are then asked to enter a maximum length and name for each field. The next step is to tell the program the length of the logest field that you will sort or search, whether you have a printer, and the day's date.

Just that simply, your database has been structured. After that startup session, the program calls its own main menu to allow you to work with the database you have created.

One of the real strengths of the startup routine is that you don't have to make long-term, unchangeable decisions before you are really sure what the database is going to contain and how you will use it. It is a relatively simple matter to change a field--from 8 characters to 12 characters, for instance--at some later stage.

The item entry in the main menu is data entry. When you select that option, it prompts you for input from the keyboard by displaying the titles of each field you selected and waiting for input. When all field prompts have been answered, the program asks if you wish to store the results in memory or on disk, start over, or correct an item. This last feature allows instant editing without retyping an entire record.

A second data entry procedure allows custom data entry. This mode lets you set up a customized format on the screen, placing constant names anywhere you want, then entering the data to the full screen by using the cursor control keys of the Apple (IJKM) to move the cursor about the screen. You design the custom entry format right on your screen with cursor movements and simple commands.

In addition, a set of control characters lets you back up or move forward a field in the record, whether you have entered anything in the current field or not, advance to the next page, or back up a page. This is a remarkably simple system to use, especially for those situations in which data is incomplete at the time of entry.

Powerful List Command

The list command from the program menu allows you to display your files on either the screen or the printer by selected record number. It gives you three ways to do this: in the order originally entered, in a sorted format, or in the order of the last filter (a special sort that selects and sets up an index of records containing certain data you specify).

The menu then goes through a series of questions about how you want the list presented--print field names, line feeds, continuous print, etc. The list command gives the user great selectivity and flexibility in what he actually sees or what is printed out from the data file.

The printer set-up routine sets the parameters for producing hardcopy of your efforts. It includes standard print parameters along with such niceties as right justification of fields and the specification of the number of horizontal fields before executing a carriage return.

One of the most powerful of all the capabilities of the program is the custom output routine, which allows you to create custom outputs to the printer or monitor and to operate the comprehensive math functions intrinsic to the program. You control every phase of the final apppearance of the report, enter text of up to 4000 characters any place you wish, place the fields at any location on a form, and print out up to 254 columns wide and 249 lines deep. Using the custom output mode, you can write the particular document back to the disk as a separate file at any time, which I believe is a unique capability among microcomputer database systems.

Unlike most of the rest of the program, the custom output routine demands patience and forethought since it must be told what to do at every step. Once the report looks the way you want it to, the custom format can be saved and called up instantly for future use, or edited still further with powerful editing commands.

Using custom outputs, you can command simple formats such as two-up mailing labels or complex formats such as checkbook entries related to a companion general ledger database structure.

The math and manipulation routines give you such standard operations as addition, subtraction, power, sine and cosine, and random number generation, as well as such complex capabilities as natural logs, conversion of degrees to radians, modular arithmetic, and logical not operation. All are handled in reverse Polish notation, which may be the most logical kind of computer entry system for arithmetic computation. Instead of saying 2 + 2 = as we have been taught from our pencil and paper days, the equation is entered from the keyboard as 2 enter 2 enter +.

Move Data To New Format

While Inspect/change functions are common to most databases, the additional update and transfer routines of Data Factory allow you to change the existing database input or output structure, then move the data over to the new structure without reentering the data. These are among the most useful and powerful of all the Data Factory features in that your own database can grow and change with your needs, rather than being locked into whatever format you set up at the beginning.

A related feature is the construct and append routine, which may be the most powerful routine in the entire system. With the C&A routine, you can add up to 10 new fields to an existing structure, decrease the number of fields, change individual field length, switch field positions around in the file, append records to the existing file, and select which records to transfer by moving them in selected blocks. With C&A, you can selectively back-up individual files on a disk rather than copying the entire disk, manipulate the previously entered search and sort characters, append files even though the field lengths do not match, and fix a bad record caused by garbled data, hardware error, or even physical fault in the media.

Many Ways To Search

The search routines are highly flexible in Data Factory. You can search by record number or by any of the fields. In addition, you may direct a regular search, which will respond to the search characters CAT with CATholic, CATalog, and CATerer. The command to use internal search would also report back such strings as eduCATe and duCAT. Still another search option finds those records that do not match the search category.

The next level of combining the file is the master search routine which allows you to indicate several items to search for ("scope searching,' as it is known on minis and mainframes). The process is known in Data Factory as using a filter. You construct as complex a filter as you need to conduct a particular search. A screen menu prompts you through every step of the construction of the filter, which also allows you to implement the logical operators "and' and "or' to produce levels of filter. While levels of filter cannot be added once a filter has been constructed, the command "nop' (no operation) can be designed into the structure and later changed to an "and' or an "or'.

Filters can be saved and reused or altered at any time. When a filter is used to process a data file, the index of the file is displayed, showing which records match through all stages and levels of the filter; those that meet all requirements are automatically written to an index on the disk. The save and re-run feature of having the filtered index on disk is a powerful tool for situations in which various reports must be generated over time using the same sorted records.

Like the other routines in Data Factory, the sort function allows great flexibility. When entering records, the latest record goes to the end of the file. However, through use of the sort routine, the records can be rearranged numerically, alphabetically, or by date and can be restructured in either ascending or descending order. The Data Factory also allows sorting by one-level (the regular sort) or by multi-level which permits up to four levels of sort, such as sorting one field by name and another by date.

The sort routine automatically compacts all files as it is used, giving you maximum data storage efficiency on the disk.

Three Ways To Index

Another powerful, automatic feature of the Data Factory is its index routine, which provides three different kinds of indexes to the data in the file.

First, you can print out or display on the screen the first appearance of data in the field searched. The routine will show the record number of that first appearance. Second, you can construct an index for all appearances of the particular search word.

Finally, you can get a count of the number of times it appears in a file.

As an example, let's presume that Data Factory is being used in a hospital emergency ward. By using the first option, you could search a field called "location of injury.' The first option would print out a list: arm, hand, eye, ankle . . . Using the second option, the listing would present arm 12,23,39; hand 16,26,27,41; eye 6,9,20,45, showing which records contained the search word. By using the third option, the listing would show arm (15), hand (11), eye (7), ankle (12), indicating the number of times each type of injury appeared in the file.

Applying It In Business

In any database manager, the ability to delete data, formats, files, and records is vital in keeping the file up-to-date. With Data Factory, which stores up to 10 formats, any one can simply be killed. All such deletions are done from a prompting menu. Individual files can be killed in one action, which is a great time-saver. Records can be deleted from files individually, in groups according to a common field, or by blocks of record numbers. In many cases, Data Factory asks a fail-safe second question to make sure you really mean to delete what you ordered deleted.

How this all can come together in your business life is shown in the database that you can design using Data Factory and use every day in dealing with customers and prospects.

The database could be made up of up to 86 fields and contain all the normal kinds of identifying data, such as name, ownership, address, phone, key contact, estimated paper usage, and so on. In addition, it could contain a section on how the customer handles its paper supplies, storage available, amount used, type of paper used, cores preferred, etc.

Another section could deal with contracts with these customers, how much paper they cover, cumulative sales history in volume and dollars, expiration of contracts, and related information. Still another section could deal with competition: who else the customer buys from, how much, when their contracts expire, plus some confidential information for use in dealing with individual customers.

You could access this information in a number of ways to make your productive hours--the hours spent with customers--more profitable. One obvious way is to check expiring contracts regularly, both yours and your competition's, and then make special efforts against those prime prospects.

Another way might be in scheduling trips. Say you are going to Boston. You could have Data Factory list all your customers and prospects in the Boston area and then schedule visits around them.

Still another use is in emergency situations. Say there is a fire in one of the plants that means production will be down for a significant time. You could have Data Factory instantly produce a list of customers who rely on production from that mill, and find them alternative sources of supply even before they know that there is a problem with their primary source. That is the kind of service to which a customer is entitled, but which is very hard to do manually. It is just the mindless kind of filter that the Apple does very well.

Summing Up

Salesmen used to do all those things manually--with a lot of difficulty, pieces of paper, and time. Now they can do them all with an Apple computer and Data Factory, and find that they can be more efficient, more valuable to their customers, and especially, more profitable. I recommend Data Factory to anyone who needs quick access, with tailored output, to a complex database, but who does not want to become a computer expert.

Products: Micro Lab Data Factory (computer program)