Why MS Visual FoxPro?

Microsoft Visual Foxpro is the basis of our software development. It was felt that this is the most secure long term database development product. The chosen development platform has often been the subject of heated debate, for those who would like to review this topic in detail I have included the full comparison from Microsoft to see it click here.

Visual Foxpro is MS's only data-centric development environment. It is part of  Visual Studio, MS's "best of breed" set of development tools. VFP is a true object-oriented language that supports inheritance. Using VFP's native database engine can give your applications a substantial performance boost over using ODBC or ADO.Since it is a data-centric language, development time can be considerably less than with general purpose languages. VFP can work just as easily with SQL Server as it can its own database, it is totally transparent. VFP is about data, not DBF's.

Visual FoxPro has a number of benefits that make it a very versatile tool.

  • FoxPro code is based on (and extends) the xBase language. xBase (ie Clipper, foxPro and dBase) was the standard for DOS-based business application development until the advent of Windows. It is easy and incorporates the database processing as part of the language.
  • Reports, Forms and even Code can be added into an application without the application having to be rebuilt. This makes it very easy to integrate with existing applications and to modify the user interfaces to suit individual clients needs.
  • The database has no royalties associated with it, making distribution very cheap.
  • The database rules and the foxPro code runs in the same environment making it extremely easy to develop and to troubleshoot.
  • Development time and costs can be dramatically cut by avoiding the overhead of a SQL server back-end. 

Common questions...

  1. "Why do I hear more about Access?"
    Access is a end-user tool that is packaged with MS's other end-user product line, MS Office.It is designed for small single-user desk-top applications. MS Office has many more users than Visual Studio making Access much more well known.
  2. "I want to use SQL Server not VFP..."
    Fine, SQL Server can be the data store for VFP. You still need a place to put your business and application logic. Nothing will process the data faster then VFP. The COM overhead involved in using ADO will slow down processing against Vfp's native database access. However, all of our systems cannot have the database back-end swapped. This is because of our business rule inheritance.
  3. "Microsoft bought FoxPro only to corner the old DOS database market"
    If this was the case why has Microsoft continued to develop the product. Microsoft bought Foxpro at version 2.6, since then they have released 3.0, 5.0 and 6.0. Each product more powerful and with more features than the previous version.

If there is still doubt then think of it this way... Up until windows came along 85-90% of DOS-based business development was done in xBase languages. When I started programming, I both professionally programmed and taught in Basic. Then I was forced to change to xBase due to a major client's requirements, I now use both Visual Basic and FoxPro. I use VBscript in web pages and Outlook forms, VBA to control Office and FoxPro for business application development. Microsoft bought FoxPro because they knew they did not have a business database development tool, why else? VFP is a great choice.

Formwork

On top of Visual Foxpro we have built a Rapid Application environment through the creation of a set of classes that allow complex forms to be built without the problems normally encountered with Object Oriented development. Object Oriented development has enormous advantageous but it also has it’s complexities in ...

  • Handling exceptions and unplanned events
  • Tracking database events
  • Locating the code necessary for handling events
  • Maintenance
  • Traditional programming practices do not work, programmers must be retrained in OOP procedures.

Object Oriented development must have a strong foundation of classes in order to solve these problems. The classes define the behavior of objects created from them, the classes must communicate together to handle exceptions. Through the way we have created our classes we are able to create large robust applications rapidly.

This platform we created is called formwork. Through formwork we have created a system that provides..

  1. Rapid Application Development
  2. A multiple document interface
  3. Network capabilities and electronic transfers.
  4. A dictionary-driven menu system that allows the some users interactive control over how their menu appears.
    • Depending on access rights users can create their own ‘home’ menu page that can contain frequently used reports and presentations.
    • Supervisors can modify other people’s menus and application specific access rights.
    • Menu items can be set to fire on a schedule
    • One menu item can be set up to execute multiple processes
  5. Tree type searches
    • Fully integrated with the FoxPro dictionary to ‘understand’ how the relationship between tables should be presented to the user.
    • Users can search for, delete and attach items at specific levels within a visually presented table hierachy
  6. A report interface that allows reports to be integrated into a menu by users.
    • The users can even specify parameters to occur at report runtime.
    • A given report may be stored with multiple configurations
  7. A standardized user-interface that utilizes standardized keystrokes for data entry (new record, delete record) across all forms.
  8. Simultaneous form processing, the user can multi-task within the application.
  9. Various programmer features that enable simplified OO coding
    1. Centralized events
    2. Standard trapping for table events
    3. An advanced programming interface to allow distribution disks and upgrades to be produced easily. The setup disks are self-analyzing that detect changes to table structures and make the required adjustments at the customer’s site.
    4. On-screen detection of skipped mandatory fields etc.
Integrated modular design

LABERG applications are comprised of one or more application ‘modules’ which seamlessly integrate into each other. When purchasing 4 application modules, you actually get 1 application. One installation, one main executable program and one set of data.

If a module does not suit your particular needs we can customize a system for you without affecting the rest of our product. For example, processing time sheets from geographically remote sites. You like the ability of our systems to distribute data remotely, but you desire production statistics to be trapped as well, either add-on your own screens to the system or we can sub-class the application module for you according to your specifications.

Backward compatibility

Should you purchase the ‘LITE’ version of the Distribution Management module, and desire to upgrade later, the new version will automatically port your old data across.

Reports

The Formwork system has third parties tools integrated in to speed up the development of reports and professional presentations. It uses R&R a PC based reporting package for report development. Through R&R the system has OLE links to the Microsoft Office Products. Making it extremely easy to do complex data analysis.

PowerPoint is also integrated allowing reports generated from R&R to be professionally presented to the user.

Training and Documentation

It is significantly cheaper to provide integrated tutorials than it is to train remote sites. It also provides a constant reference point for training of new employees and reviewing software features. This provides a significant cost savings over traditional methods of training and is more effective. The training is integrated into the menu system to make a seamless low-cost training solution.

Being a distributed system it is important that the application be implemented with documentation. However, on-line documentation provides better user support than does manuals, it is also cheaper and easier to upgrade. Experience has shown that hard copy manuals are not as user-friendly as on-line systems. The system comes with both tutorials and context-sensitive help systems available.

 


 

Australian Enquiries Only, Please

Logistics software solutions - Sydney Australia

Email: business@laberg.com.au

PO Box 96, Roselands,  NSW 2196, AUSTRALIA

www.laberg.com.au

Ph: 02 4889 9441