|
Purveyor, BB4GL,
and Pick/MultiValue History
Purveyor Software and the BuildingBlocks 4th Generation Language (BB4GL) had their beginnings over twenty
years ago in my work for J.G. Haldeman & Bro., a medium-sized
poultry & seafood distributor. At that point, I had the
ambition to produce a distribution system, as well as a database operating system, both superior to all I had or would encounter. That desire eventually
propelled me to produce these systems which are not, in my biased
opinion, merely adequate or workable, but excellent. As such, Purveyor encompasses not only the basics of transaction processing
and storage, but delves deeply into the realms of analysis
and control, while my ideas which have become the BB4GL were first conceived and given by me to those who brought into being my original Prime Information System and to all of the other Pick vendors as well. These realms of anaysis and control areas are the ones that I believe
justify the cost and effort that go into installing and maintaining
a computer and a database. Without them, the benefits of computer
generated invoices and purchase orders are marginal. The BB4GL offers the type of interface and system support which is necessary to serve customers and for a computer system to compete in today's world.
I started with a basic software package that Haldeman's employed,
which had been created and licensed from Honor
Foods and was called the Honor Foods package. Working in-house
at Haldeman's and using Use Case, Data Modeling, Service-Oriented Architecture (SOA), and Test Case Methodologies, I enhanced and reworked that system to do much
more than it had done originally. I then reworked it on my
own while employed at Ultimate Data Systems, a vendor of SHIMS
(Supply House Inventory Management System) at which I was
both able to learn and teach a great deal. I decided to make
it multibranch and to broaden its appeal. Moving on, I worked
at a UDS/SHIMS customer, Aireco Supply, an HVAC supplier,
which had a passing interest in my software and enjoyed my
talents as an inventory manager/MIS manager/computer programmer.
The BB4GL is simply my version of those routines which I could develop in Basic which were incorporated into Pick and Pick's vendors systems. My biggest and best ideas have become parts of the databases themselves and many of those are not within the realm of Basic programming but of system programming and were implemented at that level. To see what those ideas were, please see the document describing my Inventions and Industry-Accepted Ideas in my Resumes web-page.
From the beginning, I stressed accuracy and a completeness
of analysis I found lacking in most software systems. While
many systems have a field called freight in purchasing, Purveyor
has an entire built-in freight and storage manifest system
which not only tracks and controls movements of cargo, but
contributes cost information directly into the pricing, inventory,
and analysis databases. Purveyor's entire inventory tracking
and costing system was created with the reality of date qualifications
built into it, so that old unresolved, unreceived purchases
don't show as incoming, far future orders don't reserve stock
that can be immediately repurchased if sold today, and stock
levels can be conservatively maintained and appropriately
purchased for.
While other systems solve the requirements of several departments
of a company through the same screens, putting control into
the wrong hands (counter salesmen handling such issues as
A/R terms, aging dates, credit release, issuance of credit,
and miscellaneous G/L posting), Purveyor was designed with
responsibilities appropriately distributed and reserved wherever
and whenever possible. While the sales order entry system
is one of the most powerful you will ever use, it entirely
reserves the above parenthetically mentioned functions to
accounts receivable and credit management personnel. Yet those
same functions are accomplished more simply and with more
useful analysis data than systems where sales has to perform
these functions.
The separation of the credit function allowed the creation
of an entire quality tracking system based upon returns to
stock and/or damaged goods returns. This allows a manager
to determine which of his products or product lines is causing
the most problems, as well as which customers are complainers
and/or nitpickers. Purchasing can avoid poor vendors, while
sales can avoid selling to problem customers.
It also allowed the creation of an A/R system which treats
the sale as the central transaction, with most others simply
affecting the balance of those transactions. In essence, balances
are kept by invoice, so that an accuracy of aging is easily
maintained by even the most overworked A/R department. Insightful
methods allow these work loads to be decreased, while the
analysis one can perform is increased.
Besides a very friendly cash receipts screen for doing conventional
cash posting, cash received at the counter can be directly
entered as cash tendered, which will later directly and automatically
apply to that invoice. This can eliminate much of the posting
required for cashcustomers.
In conjunction with these A/R functions is a feature that
allows a company
(at least from the computing standpoint) to win with companies
that have some or many branches or entities that deal with
the company each as an individual customer or vendor, but
who have central billing and/or control. This design extends
down even to customer lookups, where customers can be looked
up by their store number within their company, an ability
rare to systems such as these. The feature I am speaking of
centrally is the ability to post cash by parent billto, to
analyze such a parent company ccording to credit limits and
terms set for both the parent and the subsidiary company.
The end result is a more efficient data entry system, with
a whole host of useful, insightful databases available both
to terminal and printer.
An additional
payoff from this A/R system is the A/P system which was essentially
made from a rib of the A/R system, having all those elements
common to both, minus those inappropriate, such as statements,
and plus those needed strictly by A/P, such as checks.
Of course, a major worry when one contemplates new data elements
and processing is whether one has the hardware capacity in
terms of storage, memory, and processing speed. This system
takes advantage of some data structures made available in
recent years that allow many data elements such as system
parameters and file addresses to be read in once at logon
instead of repeatedly throughout daily usage, as is the norm
in lazier systems. This saves CPU time as well as disk access
time, yet requires no more memory than other systems. Real-time
transaction processing is balanced with off-peak batch processing
to ensure that the daily work of all in the company can proceed
in a timely manner. Attention has been paid in the design
of every database to the aspect of update and retrieval performance,
not just in the design of the programs which access them. We have also endeavored to make it open enough to serve other types okf industries beyond foods and have enjoyed interest from several such companies through the years.
About mvBase and other MultiValue/Pick systems: an older and much venerated database system, it was once an operating system which competed with Unix as well as having its own database. Its communications facilities weren't as good as the ones Unix had, but its database was very strong, so they ported Pick, as it was called then, to Unix as a database. Since then it has also been known as an operating environment because it can operate many operating systems functions from within the database, at least, on several implementations. It started from humble roots, undercapitalized, yet, despite this, was quickly accepted by many knowledgeable about computers and their early limitations.
Indeed, Pick answered many of the calls for hashed and/or delimited records systems, and multivalued support which more closely resembled the real world. Instead of being confined to rows and columns and fixed-length fields, imaginative data structures could be employed. Though it does not meet what some call "first-normal-form", it meets nearly all of the higher forms and it, among other systems, is one of the reasons why the "first-normal-form" rules constantly are being questioned as limiting and artificial. Indeed, there is a certain club of systems which benefit by keeping the more narrow-minded view of "normality" in place. Pick also was and is completely scalable, very efficient, and developers liked it and still do. While some have accused it of being cult-like, I have found through long experience that all systems on the market today each have their own cult-like following and their protractors and detractors. Like other successful systems on the market today, it has both advantages and disadvantages relative to other systems and may be very well suited to some organizations and not as well to others.
It has good tools, though not as fancy as some in existence today. It is stocked full of options, though, in every system facility and is very mature and stable. It is one of the preferred systems for companies needing speedy, high-volume transaction processing, but its multi-dimensional nature has made it successful in the data warehousing area also. It succeeds in both the OLAP and OLTP arenas. As such, it is a great system for organizations poised to grow or who are already large and needing better throughput. Thus, it survives today, even in the face of the daunting capital-intense competition of Oracle and SQL Server, and seems to be growing under the guidance of those who have married it more closely to emerging technologies such as java, Visual Basic, Microsoft Office, Unix, Windows, Lynux, PDFs, HTML, and XML. On jBase, Pick is even becoming married to Object-Oriented technology.
In the beginning, it was as user-friendly as any system on the market and some are still that way. We here at Racine Enterprises have worked hard to keep the system user-friendly as well as business friendly. Some local systems with which I've been familiar are Delaware Technical and Community College, Honor Foods in Philadelphia, Principle Health Care in Rockville, MAMSi/United Health Care in Rockville, and J. G. Haldeman & Bro. in Chadds Ford. There are, of course, many others.
Pick was licensed to many different companies and sold under many names. Many have heard of one or several of them. They have had such names as Pick, MultiValue, ADDS Mentor, Ultimate, Sequoia, UniVerse, UniData, UniVision, jBase, Revelation, Prime Information, Open/Insight, Reality, and QM, amongst others. ADDS came out very strongly in the stock market the day they licensed Pick from Pick Systems. It has run native on hardware designed especially for it, on PCs natively, on Windows as an application, and, of course, mostly on Unix.
There were two major strains of it, though they are combined to some degree on almost all types today: one which descended directly from Pick Systems and another from Prime Information which copied the database structure and redesigned how the dictionary items worked to some degree, relying more on Basic and not at all on Picks own set of conversions and correlatives, which you would probably liken to "expressions". Later, they bought the right to be called Pick-like, but today their legacy is completely accepted in the Pick community because they advanced and spurred the mainstream of Pick on to higher heights. In many ways, however, the earlier Pick systems co-opted these ideas and did a better job of implementing the idea of Basic in dictionary items and expressions. Indeed, given the relatively small investment initially, Pick has done very well. Some of the major corporations which have held Pick systems through the years have been NCR, Informix, and IBM. IBM still owns and markets UniVerse and UniData under the U2 banner. Indeed, most of these systems are still around today: Mentor has become mvBase, Sequoia has become mvEnterprise, Pick has become RainingData and has become TigerLogic recently, with jBase and QM being newcomers to the field, but growing rapidly. All have a core set of similarities and, since they run on a variety of platforms, it is conceivable to port from one to any of the others, thus enabling it to run on virtually any platform.
John Padden Racine, President - Racine Enterprises Inc.
|