6

The LA Fox Developer Newsletter
October 1997.
Why Visual MaxFrame
Professional?
by Michael Meer, MESLLC

Microcomputer Engineering Services, LLC (MES, LLC) recently
switched from using it own in-house framework to using G.E.
Consulting’s Visual MaxFrame Professional (VMP). Over the
last two years, we have developed a complete development
environment including RAD tools, built-in functionality and
consistent user interface. We are able to create basic, full
functioning screens in mere minutes. All of our forms are
consistent and easy to use. Why would we switch?

There are many reasons to switch including new features,
extensibility and client/server technology. VMP 3.0 has many
features of its interface that help our applications to appear
more commercial and professional. These features include
allowing the user to select their own font & color scheme,
remembering positions of each screen, grid column orders. The
base framework also allows the user to resize the window and
thus resize all of the controls, as well as the basic window
cascade and arrangement functions. VMP has built-in rightclick
menus that are sensitive to the object they are over. You can
“zoom” an editbox to view more of the data or you can cut and
paste in a textbox. All of these functionalities are built right into
the framework!

With the framework so rich in functions, you might wonderwby
you would even worry about extensibility. A perfect example of
where you might want to extend the framework shows up in the
rightclick menus. We like to give the user an ability to paste in
the date & time into memo field. This functionality is not built
into VMP, however, since you are given all of the source code to
VMP, you can add the code very easily. Also, suppose you
want every screen to have a green background. You can
subclass the classes included in VMP, change the base
background color and your ready to go!

Finally, the piece-de-resistance. Client/Server. VMP supports
dbf’s, local views and remote views harmoniously. In fact, you
can develop your application with local views and then “upsize”
it without much rewrite. The sample application included with
VMP shows many different approaches to both local data and
remote data forms. Our framework was designed with dbfs in
mind. Modifying itto handle local and remove views would have
been difficult. Transactions control is built into the classes as
well as several “hooks” to allow presave and postsave opera-
tions from within the transaction. VMP is client/server ready!

If you are looking for a framework with an easy learning curve,
we recommend VMP. The manual has many examples and
you’ll get a fully functioning sample application that gives many
approaches to the same problem. Each screen in the sample
application is well documented in functionality as well as
procedurely.
Codebook (Con't from page 5)

The documentation provided by the book provides a reasonable
basis to learn the Codebook foundation, but the software
implementation is a couple degrees of magnitude more complex
and not heavily commented. There is no direct support available
but a strong community of developers using Codebook helps fill
this gap with peer support. Try Compuserve Fox Users Forum,
and Ed Leaf’s new CB3 Web Support Forum at http:II
www.leafe.com/cb3/forum/default.html I also recommend
downloading Codebook for Mere Mortals by Kevin and Nicole
McNeish.

Selecting Function or Visual conversion is the most important
decision you must make.

The Functional conversion makes it easier for the d2veloper in
the short run, but can require more work in the long run when
you want to begin to take advantage of the new features of
Visual FoxPro 5.0. The Converter makes the form a “backward
compatible” form, which has attributes unique to this type of
form.

In the Visual Conversion, none of your existing snippet code
(Open, Valid, etc.) is mapped to the corresponding methods and
events. You will have to cut and paste your procedural code. But
you won’t have to modify the converted form to take advantage
of the new event model.

Total rewrite - Hold your breath and jump in

Well, not exactly total. You can, of course, keep the data
structures and business rules you have already developed. But
you will want to take the time to re-architect your application to
take advantage of 00 analysis and design techniques. This is
the most costly (and time consuming) approach, but it is also
the most powerful, flexible and the one that will allow you to
take advantage of all the new features of Visual FoxPro 5.0.

In addition, you will find that you can eliminate hundreds
(thousands?) of lines of code because Visual FoxPro 5.0 has
built-in functionality that you used to have to code yourself.

VFP 5.0 offers a wealth of new capabilities and a great object
oriented programming environment, but there is a learning curve.
With a reasonable understanding of object oriented program-
ming as it is implemented in Visual FoxPro, I believe one can
minimize the transition by utilizing one of the development
foundation environments available such as “The Visual FoxPro 3
Codebook” or “Visual MaxFrame.

Foundations are not necessarily rapid development tools, but a
good framework that will save you lots of time. With a good
foundation, you will have many of the tools necessary for
building a solid application available to you.
Page 6

6