Home > StrataFrame for FoxPro Developers
Making the Move to .NETThe Problem
Most FoxPro developers are faced with the decision of when and how to move to .NET. This
can be an overwhelming process trying to decipher articles in magazines, lectures at conventions, and
the general buzz within the VFP community. Once the decision has been made within a VFP shop
to make the move to .NET the first question on every developers mind is, "Where do I start?, " followed by
"How do I do this in .NET?" This is a very frustrating place to be. Aside from these
questions other basic factors come into the picture, such as converting Visual FoxPro data structures to SQL Server,
or just communicating with existing FoxPro databases. Another common question is, "How do I move from a data-centric language like
Visual FoxPro into a disconnected data environment like .NET and how long will the transition take?"
The Solution
StrataFrame enables a VFP developer to migrate applications to .NET more easily and provides a familiar development environment.
Begin development on the application
immediately without worrying about how to connect to
data, develop layered interfaces, bind data to forms, marshal data between tiers, or optimize
the run-time environment for performance. These functions plus others have already been done for you. Additionally,
StrataFrame provides FoxPro like interaction with the business objects (or table) including features
such as SEEK, SCAN, zero-code control source data binding, field access by name, and memory variables. There
is also support for enhanced controls that provide functionality commonly used by FoxPro developers like
the Wait Window. If you are a Visual FoxPro developer and a novice or expert .NET coder, StrataFrame
provides the best development environment and solution for your .NET applications.
Why Experience MattersWe Create Real-World Applications
In addition to being framework developers, we have products in the field that rely on the
abilities of StrataFrame, including a medical application called PracticeStudio which is operational in
thousands of user sites. Our initial application was written in FoxPro and is being migrated to .NET a piece at a time using StrataFrame. Most of our
core StrataFrame developers have extensive Visual FoxPro backgrounds and know the many benefits that
come with developing in that environment. Some of our
medical application developers were strictly
VFP developers with their first exposure to .NET made via the StrataFrame Application Framework. These developers were
immediately productive using StrataFrame. They loved how it made them ".NET experts",
day one. Our real-world application experience has been priceless in the development and
improvement of StrataFrame. StrataFrame has prepared the way for your .NET
migration.
Other VFP Developer Responses
All StrataFrame users that have come from Visual FoxPro environments into .NET have had similar experiences.
StrataFrame provides a development environment that "makes sense" to Visual FoxPro application developers. One StrataFrame user with an exclusive Visual FoxPro background stated, "I tried creating a proof-of-concept with every .NET framework available
on the market, and yours (StrataFrame) was the only one I was able to actually complete the POC with...and StrataFrame
had the shortest trial time."
Comparing Development Environments (VFP vs .NET using StrataFrame)
There are many benefits that StrataFrame provides Visual FoxPro developers.
Below is just a sampling of the native features of StrataFrame that any FoxPro developer can appreciate.
Data-Centric
FoxPro is a data centric language, meaning that database and table integration is
merged into the development environment in every aspect. StrataFrame makes .NET a
data centric language in the same respect as FoxPro by allowing developers to effortless
communicate with data in a structured and accessible format. In many ways StrataFrame makes
interacting with data easier than FoxPro, especially when it comes to updating field values as shown in the following example.
Visual FoxPro
REPLACE cust_fname WITH "John" IN customers
- or -
SELECT customers
SCATTER MEMVAR
m.cust_fname = "John"
GATHER MEMVAR
StrataFrame
Customers.cust_fname = "John"
Drag-n-Drop Data Environment
Adding tables to a form in Visual FoxPro is very easy. It is as simple as opening the
data environment and adding the table. Inherently adding a data source to a form in .NET is
clumsy and complicated because it requires that an existing data source be associated with a form
and requires two controls to make this happen. StrataFrame resolves all of these issues by allowing a
business object (table) to be dropped onto a form without forcing the design-time environment to be tied to an
existing data structure. More importantly, it is as simple as dragging a business object onto a
form. Once added, the developer can interact with it through controls and in code without writing
complicated run-time code to force the connection and adapters to look at the end-users data source.
"Control Source" Data Binding
FoxPro makes binding a field to a control (i.e. text box, radio button group) very easy by using a drop down
list and allowing the desired field to be selected for the control source. StrataFrame uses this
same type of architecture when binding a field to a control. From this perspective Visual FoxPro developers
can be productive immediately in creating forms and connecting it to the desired data. Simply drop
the desired controls on the form and tie the appropriate field to the control using a drop down list. It's
that easy!
Private and Default Data Sessions
One very useful feature of Visual FoxPro are default and private data sessions. This is especially helpful
at the form level when children forms need to be able to access the data on a parent or calling form. StrataFrame
provides a powerful and seamless feature that provides this functionality called a ChildFormDialog control. Each form (parent, child, grand-child, etc.)
can be programmed as though it is a stand alone form. When the child forms are called through the Child Form
Dialog control, it will automatically translate the business objects (tables) from the parent form to
the child. There is extended functionality that will even manage the parent-child relationships
automatically without writing a single line of code!
Seeks and Scans
Visual FoxPro provides some very powerful and useful data navigation functions such as SEEK and SCAN.
StrataFrame has implemented these same powerful tools and even expanded upon them. All business objects (tables)
intrinsically have methods that replace the SEEK and SCAN functionality. In addition to these methods,
additional methods like SeekToPrimaryKey() make navigating to specific records even easier. Another
major benefit of StrataFrames functionality is that is does not require an index in order to execute
a seek. Moreover, any piece of data within the business object can be "seeked."
Visual FoxPro
SEEK("A1234", "customers","cust_code")
- or -
SELECT customers
SET INDEX TO cust_code
SEEK "A1234"
StrataFrame
Customers.Seek("cust_code = 'A1234'")
- or -
Customers.SeekToPrimaryKey(4321)
Wait Window Support
Outside of the FoxPro world, the Wait Window is virtually unknown. But for those
developers who have used this feature know that it can be extremely useful and may be frustrated when this is no longer an option. StrataFrame provides a Wait Window that exceeds
the limitations of the Visual FoxPro version.
Easy Migration to SQL ServerBring FoxPro Structures Forward
One major benefit to all Visual FoxPro developers is the ability to quickly and painlessly
migrate data structures to SQL Server from existing Visual FoxPro databases. The Database
Deployment Toolkit is a powerful tool in the StrataFrame arsenal. Using the import tool with the DDT,
Visual FoxPro structures can be moved forward with automatic field type conversions to SQL Server. Additionally,
there is support for optimized conversions that will improve the performance of the migrated structures.
No SQL Server Knowledge Required
Become an instant SQL Server expert with the Database Deployment Toolkit and the integrated support
within the Application Framework. The developer is never required to manually interact with SQL Server when
creating and deploying data structures. Simply "point and shoot" the structure to a server and StrataFrame
will do the rest. Moreover, the Database Deployment Toolkit has features to automatically create
stored procedures, as well as deploy them, which can improve the performance of the application.
Summary
In short, StrataFrame has laid the foundation for you to develop great applications.
Using StrataFrame provides a familiar development environment while acheiving all of the benefits
and power of .NET. Moreover, an existing FoxPro application can be migrated forward in pieces using
many of the features and tools of StrataFrame including the ability to natively communicate with existing
FoxPro databases as well as any new SQL Server databases within the new .NET application, even when they need
to be accessed on the same form.
The ultimate question isn't whether to move to .NET, but how painless and enjoyable the process
can be. Using the StrataFrame Application Framework provides a foundation and
environment developed by .NET experts with extensive FoxPro backgrounds who create real-world applications.
Purchasing StrataFrame is the best business decision your Visual FoxPro development shop can make!
|