Monday, October 02, 2006

What will you do with VFPCompression ?

Craig Boyd has posted about his Visual FoxPro VFPCompression library, a tool that lets developers programmatically zip and unzip files.

While many may immediately see the benefit of using this approach for aiding in backing up files, there's another use that may not be immediately obvious.

Zipped documents for backup are nothing new but file formats that are actually zip files with multiple documents are becoming more popular. MindJet's MindManager has used a Zipped file format since 2005 (maybe even earlier) and Office 2007 will also be using this approach.

Essentially what it means is that a Word Document (.docx extension) can be renamed to ZIP and decompressed. Inside the zip file are all of the pieces required to define the Word document. You can also use Word to open other file formats as well. Read the walkthrough to get a better understanding.

But how can you use this new approach in your FoxPro development? Well, thanks to the VFPCompression FLL, dealing with the individual zip portion becomes a lot easier so now we can think of uses in applications:

1) static lists or rarely updated files can now be stored in zip files, only being compressed or decompressed on application startup.
2) memo field usage can be reduced by storing the values in a stream that is then compressed (thus, avoiding memo field bloat)
3) application core data can be backed up on startup and shutdown, ensuring reliable backups stored elsewhere
4) updates can be packaged or sent to users and automatically unbundled
5) error logs can be compressed
6) application data can be stored in a single "file format" making it easier for applications to copy data around

Do you plan on taking advantage of this method of storing data? If so, how?


Craig Boyd said...

Thanks for the plug for the VFP Compression FLL. Great blog entry Andrew that should get dev's thinking about the many ways this library can be put to good use.

Ted Roche said...

From 2004 and posted at

"'s native document format is a compressed XML format. Unlike other proprietary office document packages, this format is openly documented. Open any document with a ZIP viewer, such as WinZIP, and you'll see a set of XML documents. These documents can be disassembled and reassembled to create new documents."

The newer 2.0 format, ODF, is a well-documented and international standard.


Andrew MacNeill said...

Thanks Ted - good point about