Friday, November 04, 2005

The PC Products Database Moves to WinHelp

With my PC Products Database on AOL and being distributed in dBase format on CD-ROM I was a little disappointed in that a lot of the information in the database couldn’t be accessed easily in the distributed copies of the data. My data in Superbase had a lot more capability but there just wasn’t any way to get it to others. I started experimenting with WinHelp and found a way to repackage the data in five WinHelp files that could be easily generated and distributed, plus it gave users a lot more access to the data.

I wrote a program in Superbase that allowed me to export the data and automatically create the source files for the WinHelp compiler and then the compiler could create the final WinHelp data files without any other work. It took quite a few hours to run originally but after a few system upgrades it was down to a few hours and the entire process was fully automated. I remember the very first full export and compile taking over 24 hours but eventually is was under 2 hours a year later!

The five files in the WinHelp package included an alphabetical company listing that displayed the addresses, phone numbers and other company contact info with a link to list all of that company’s products from the second file. Both of these files allowed searching by the company name using the standard WinHelp Search feature.

The product index file allowed searching for a specific product by name while the product and company category indexes allowing finding specific products or companies that offered a particular class of product or service. There was a link on each page that allowed quickly changing between displaying the products or companies within each product category. Everything was interlinked – clicking on a company name displayed the company contact info. Clicking on a product name displayed from a product list displayed the company info plus additional product info. The main page allowed selecting between modes/files and how the data was accessed.

Everything was working smoothly with Windows 3.1 and then Microsoft released Windows 95 and the WinHelp system was changed. It turned out that my WinHelp database was the largest set of files being compiled for WinHelp and it uncovered a problem in the compiler that it would get into an endless loop and the compile would never end. I eventually found a work around for the compiler issues and then discovered the search windows in the later WinHelp system were now limited to displaying the first 64k entries when I had over 75,000 entries in one search list. The older WinHelp handled this just fine but the newer WinHelp displayed a blank search window. But there was another work around for this – if you used the original Windows 3.1 winhelp.exe with later versions of Windows everything still worked just fine.

So the WinHelp version of the PC Products Database was eventually included on the CD-ROM produced by EMS Professional Software and everyone had access to much of the capabilities of the full database. The only drawback was that the total package was about 75MB of data for the WinHelp version of the database compared to less than 20MB for the dBase version. By the way, as an added bonus we also started including my news archive files on the CD-ROM from EMS in both standard ASCII text and WinHelp hypertext files. So the CD-ROM and my WinHelp database were all helping to promote the newswire and everything else I was doing at the time.


Post a Comment

<< Home