FilePro

From Wikipedia, the free encyclopedia

The correct title of this article is filePro. The initial letter is shown capitalized due to technical restrictions.

filePro is a proprietary DBMS and RAD system originally developed by Howard Wolowitz as The Electric File Clerk in 1978. He licensed it to Tandy Corporation in 1979 who first published it in 1980 as Profile II.

Although there was a Profile for the TRS-80 model I, model III and model IV, these were unrelated programs. The filePro of today started out on the Model II and was first released by Tandy as "Profile II". After passing through several owners, the code is currently the property of fPTechnologies, Inc.

Contents

[edit] Current Status

filePro is not a true relational database, because it does not satisfy Codd's 12 laws, although the language does allow looking up data in one file while working in another. filePro, in fact, fully satisfies only the first of Codd's 12 laws. filePro stores data in fixed length record files. It allows for rapid prototyping of curses-like screens, and add-on products are available for client-side ODBC interoperability, Common Gateway Interface-like functionality, and even a form of SQL.

While filePro supports limited data integrity checking at the table level, these checks can be overridden by code. There is limited support for triggers, and locking is done on a per-record basis, so that two users cannot update different fields in the same record simultaneously. Code is stored on a per-table basis, and follows a complex set of execution rules which few users fully exploit. Most execution rules involve triggers such as on an update or When-Leave-Field.

The product no longer ships with a printed user manual; however, there is a manual available in electronic format. As well, there is a single third-party full reference book available, along with a single third-party quick-reference guide.

[edit] History

1978 
Howard Wolowitz develops Electric File Clerk for the TRS-80 Model II.
1979 
The small Computer Company is founded.
1980 
Tandy Corporation publishes it as Profile II.
 ???? 
Profile II Plus is released.
1983 
Profile 16 is released for the TRS-80 Model 16 running Xenix.
 ???? 
Profile 16 Plus is released.
 ???? 
filePro 16 and filePro 16 Plus are released by The small Computer Company for non-Tandy computers. (Profile was a trademark licensed by Tandy.)
1986 
Version 3.0 released for both filePro 16 and filePro 16 Plus. This was the last version for the non-Plus filePro 16. Further versions also dropped the 16 part of the name.
 ???? 
filePro Plus Version 4.0 released.
 ???? 
The small Computer Company is bought by another company, and becomes a subsidiary of that company. Over the next years, the parent company itself changes hands several times.
 ???? 
Version 4.5 released.
 ???? 
Version 4.8 released.
1998 
fPTechnologies, Inc. is founded by the filePro employees, and buys the rights to filePro.
 ???? 
Version 5.0 released.
2006 
Version 5.6 released.

[edit] Future

While there is an fpGUI add-on for GUI-based access, filePro is still primarily character-based, which some users assert makes for faster and more efficient data entry. There is, however, no support for screens larger than 24x80.

There are several people who have created XML and SQL bridges that allow cross-communication with legacy systems. Not even the PHP community has provided a full featured layer with the ability to directly read/write to filePro data in real time. PHP has contributions that allow reads if record numbers are known; however, record numbers could change in a reorganization, thus eliminating the usefulness of the contribution. Writing to filePro databases is still an issue, while the internal format of the B+ tree indexes used has been officially documented, no one has adapted such a library for these indexes--any programmers wishing to write new records to a database must do that (not inconsequential) work themselves. It is possible that the internals of filePro are so convoluted and complex that fPTech is essentially unable to remedy the problems listed above.

[edit] Database Features

[edit] Strengths

  • Fast data lookups
  • Short learning curve NOTE: people with traditional programming experience, particularly exposure to Object Oriented methodologies challenge this statement
  • Data entry system allows for quick familiarity with keyboard shortcuts, and as such, typists do not have to rely on mouse acquisition.

[edit] Weaknesses

  • SQL support is read-only
  • Limited ability to communicate with other DB systems
  • ODBC support is client-side only
  • Only supports 24 lines of 80 characters
  • No journaling
  • Relationship management is manual
  • Coding limited to only if and goto (no else, switch, or looping statements)
  • Design does not allow for typical low-coupling/high-cohesion code design

[edit] External links