Session E-EXPR

Visual FoxExpress

Toni Taylor-Feltman
Neon Software

The Visual FoxPro Application Wizard

What is Visual FoxExpress?

Visual FoxExpress is an Application Wizard for Visual FoxPro. FoxPro supplies wizards that help developers create individual pieces of an application. An application wizard is basically a collection of wizards that create the various components of an application, screens, reports, programs, queries etc. Unlike standalone wizards, the individual wizards in this collection of wizards know how to communicate with each other. In other words FoxExpress’ wizards not only create individual components, they also automatically integrate the items they create into your application. For example, when a form is created in FoxExpress, FoxExpress takes care of adding the form to the menu or calling form, and either adds toolbar options directly to the form or automatically coordinates the form with your application’s toolbar.

FoxExpress quickly became the leading RAD tool for FoxPro 2.6. There’s really only one reason for this - no other product has ever managed to combine power, ease of use, elegance and simplicity in quite the same fashion as FoxExpress! The challenge we faced in developing VFE is to continue with this tradition while tapping all of the power of Visual FoxPro.

In order to do so, we worked with other industry leaders at Flash Creative Management and Micromega Systems. Visual FoxExpress is based on the Codebook class libraries and design methodologies. In fact, Visual FoxExpress includes a copy of the Visual FoxPro Codebook.

In other words, when you create an application using Visual FoxExpress, Visual FoxExpress uses the class libraries found in the Visual FoxPro Codebook as a starting point. In many ways Visual FoxExpress can be considered an interface to the Codebook methodology. In most cases, we have extended the Codebook classes to provide a great deal of additional functionality. For example, we’ve extended the Codebook Form Object classes to automatically take advantage of DBCX, there are many additional form and business object types, Visual FoxExpress supplies powerful tools for querying tables and locating records, there are additional toolbar and menu options not found in Codebook, the report management classes can have complex query forms associated with them and much more.

FoxExpress runs right from within Visual FoxPro and takes advantages of all of the new design surfaces in Visual FoxPro to make application development and maintenance a snap! When FoxExpress is loaded, a menu is automatically added to the Visual FoxPro menu. An image of this menu appears below.

When working on an application in Visual FoxExpress, your work begins from the application manager. The application manager serves as a control center to all of your applications. From the application manager applications are created, opened, copied, merged, imported with other applications and more. As you use Visual FoxExpress a table of all of the applications you have created is automatically updated.

The application manager consists of two primary components, a list of application you’ve created with Visual FoxExpress and a set of command buttons that allow you to act on those applications. The following table illustrates the action each of those buttons performs.



Function Description

New Create a new application

Open Open the selected application

Copy Copy the selected application

Import Import an application

Merge Merge another application with the selected application

Security Restrict access to the selected application, check in or check out files

Reports Print reports about the contents of the selected application

Delete Delete the selected application

Run Execute the selected application

When New is selected from the application manager you are prompted for a name for your project and asked to specify a directory setup, once you have supplied this information, the application is opened in the application wizard. The Application Wizard is also opened when you select open from the Application Manager.

The application wizard organizes all of the components of your application in a fashion similar to the Visual FoxPro Project Manager. Once you’re inside the Application Wizard you simply work through the pages in the wizard to create application components, select options to include in your applications and define the tables used by your application.

The first page of the application wizard is the Setup page. The setup page allows you to define basic information about your application, such as the application menu, the toolbar you wish to use with your application, whether or not you wish to include features such as security, an audit trail and activity tracking and other miscellaneous options. An image of the setup page follows.

Once you’ve finished with the setup page, the next step is to tell FoxExpress about the tables and views you wish to use in your application. This is accomplished in the Data Page.

From the data page you setup Visual FoxPro Database Containers and Data Base Container Extensions. Visual FoxExpress uses the industry standard database container extensions, known as DBCX. By default, Visual FoxExpress includes the Codebook, Visual FoxExpress and Foxfire! Database Container Extensions. The Data page will not only allow you to define extended properties for these extensions, it will also allow you to access any DBCX compatible extensions you are using.

Visual FoxExpress automatically creates objects based on classes that are DBCX aware. This means that properties such as ToolTipText, Captions, InputMasks and others are automatically placed into your forms based on the values you have assigned to these properties in DBCX.

The Objects Page is used to create business objects, forms and various other components of your applications. A business object is simply the visual representation of a table, view or group of tables and views independent of a form. Business objects also control what operations are available on different sets of data and how those operations are performed. Once business objects are created they can be dropped into forms in virtually any manner you see fit. The use of business objects allows you to provide multiple ways to access your applications’ data without additional coding.

When New is selected from the objects page you are presented with a list of wizards based on the item currently being highlighted. FoxExpress includes numerous wizards for creating many types of business objects, application forms and utility forms. Once a wizard is selected, Visual FoxExpress walks the user through each step in the wizard and adds the object created to the application as appropriate upon completion.

The Menu page allows you to modify the applications menu. Although FoxExpress uses standard FoxPro menu files, and selecting the Modify Menu command button will actually open the menu in the FoxPro menu designer, FoxPro’s native menu designer is really more of a creation tool than an editing tool. Visual FoxExpress’ menu page makes rearranging the items in your menu much simpler by supporting drag and drop.

Although Visual FoxExpress uses the FoxPro menu file format, when your application is built your application menu and all of the items in it become true objects that can be manipulated like any other FoxPro object. For example, all menu items can be shown and hidden, enabled and disabled and their captions can be changed. Visual FoxExpress creates object oriented menus by using a GENMENUX driver that creates menus based on the Menu classes in the Visual FoxPro Codebook.


Visual FoxExpress includes a special edition of Micromega Systems Award Winning Report Writer, Foxfire! called Foxfire! for Visual FoxExpress. When you create reports to distribute with your application, you run this edition of Foxfire! directly from within Visual FoxExpress. The Foxfire! data dictionaries are setup directly from VFE’s data tab, which eliminates the need for any duplicate effort. Once you’ve created your reports in Foxfire!, FoxExpress takes care of integrating the reports into your application. Because FoxExpress simply incorporates the reports into your application, you never actually distribute any part of Foxfire! with your application and are not liable for royalty payments to Micromega. An image of the Output page from where Foxfire! is called is shown below.

Any components of your application that FoxExpress does not provide a specific method of managing will be accessible through the other page, this would include bitmaps, text files, additional FoxPro menu files and other miscellaneous files that you may include in your application. The other page makes it possible for you to completely maintain your application in FoxExpress.


One of the primary design goals of Visual FoxExpress was to make it as extensible as possible. The Add-ons page is one

example of the accomplishment of this goal. The add-ons page allows you to inform Visual FoxExpress of other products you use or extensions you’ve created yourself and actually run those add-ons from within FoxExpress and incorporate them into your finished applications.

While Visual FoxExpress includes the most combination wizards and classes available for Visual FoxPro, we’ve also made it a cinch for you to subclass Visual FoxExpress classes and add additional functionality or to incorporate your own classes into Visual FoxExpress. Once you’ve created your own classes you can even modify Visual FoxExpress’ wizards to use your classes or create new wizards designed specifically to take advantage of the classes you’ve created. Two tools make this possible, the Object Manager and the Wizard Manager.


The Object Manager allows you to modify the classes that come with Visual FoxExpress or add classes to Visual FoxExpress for use throughout all of the applications you create. In the background, the object manager controls a table that determines what classes and object are available throughout Visual FoxExpress. It also serves as an excellent tool for maintaining a collection of classes to be used by all of your Visual FoxExpress Applications.

The Wizard Manager allows you to add, change and remove wizards from Visual FoxExpress. Through the wizard manager you can define what classes objects are based on, the steps necessary to create object and how objects are inserted into containers. The wizard manager makes it possible for you to extend Visual FoxExpress infinitely and use it in ways even its authors never imagined.


FoxExpress comes in several different flavors. The following table lists the various prices as well as upgrade pricing for Visual FoxExpress.
Version List Price Special Price

DM (+ MwSt)

FoxExpress 2.6/DOS $395 $245* 490,-
FoxExpress 2.6/Windows $395 $245* 490,-
FoxExpress 2.6/Crossplatform $495 $299* 595,-
Single User License Visual FoxExpress $495 $295* 595,-
5 User License Visual FoxExpress*** $1595 $999* 1990,-
10 User License Visual FoxExpress*** $2899 $1999* 3990,-
Visual FoxExpress and FoxExpress 2.6/Single Platform Combo Pack $594 $394* 780,-
Visual FoxExpress and FoxExpress 2.6/X-Platform Combo Pack $674 $414* 820,-
Visual FoxExpress Upgrade from FoxExpress 2.6 Single Platform $199 $149** 299,-
Visual FoxExpress Upgrade from FoxExpress 2.6 X-Platform $179 $119** 239,-


* Special price in effect until the release of Visual FoxExpress

** Special price in effect until 60 days after the release of Visual FoxExpress

*** These prices reflect site license prices. All users must be at the same location.

Location Contact
ProLib Software GmbH

Ludwig-Thoma-Str. 13

D - 83358 Seebruck

Phone: 49-8667-888321

Fax: 49-8667-888328

Canada Matison Consulting Group

187 Dunblaine Ave.

Toronto, ON M5M 2S6 Canada

Phone: 416-256-4495

Fax: 416-783-6019

United Kingdom FoxWare Limited

Charlesworth House

Hart Street

Brentwood, Essex CM14 4AX

Phone: 44-1277-264422

Fax: 44-1277-234855

FoxWare (SW) Limited

166/167 St. Helen’s Road

Swansea, West Glamorgan SA1 4DU

Phone: 44-1792-468886

Fax: 44-1792-468887