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 applications toolbar.
FoxExpress quickly became the leading RAD tool for FoxPro 2.6. Theres 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, weve 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.
How Does FoxExpress Work?
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.
The Application Manager
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 youve 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.
Option |
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 |
Developing an Application With Visual FoxExpress
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 youre 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 Setup Page
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.
The Data Page
Once youve 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
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
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, FoxPros 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.
The Output Page
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 VFEs data tab, which eliminates the need for any duplicate effort. Once youve 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.
The Other Page
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.
The Add-ons Page
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 youve created yourself and actually run those add-ons from within FoxExpress and incorporate them into your finished applications.
Additional Tools
While Visual FoxExpress includes the most combination wizards and classes available for Visual FoxPro, weve 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 youve 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 youve created. Two tools make this possible, the Object Manager and the Wizard Manager.
The Object 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
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.
How Much Does It Cost?
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 | Sonderpreis |
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 |
Germany Austria Switzerland |
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. Helens Road Swansea, West Glamorgan SA1 4DU Phone: 44-1792-468886 Fax: 44-1792-468887 |