Customers

Success Stories

Midwest Software Development Corporation -- As Told to The Blade newsletter staff:

Some History

I first downloaded DevForce several months ago, version 3.0.8 I think. I went through a couple of the tutorials, tried to get a project together in my “spare” time (something I have very little of), and after a couple days of playing with it I never touched it again.
Then, on Monday, July 10th, my employer announced that the project I have been working on since January 1st, 2006, in Visual FoxPro was to be stopped, and everything I had done so far and all new development would be done in .NET 2.0 and SQL 2005, and this had to happen PRONTO.
At the meeting I asked if they had decided on any particular tools to use for the .NET development, and the response was “that is up to you and Daniel (the other programmer at the company).”

Getting to Work

Starting on 7/11/06, I began transferring my FoxPro data tables to a SQL 2005 database.
On 7/12/06, I downloaded DevForce version 3.1.5 and ALL of the documentation, help, tutorials, etc. I could find on your website (a total of 44 files).
I printed the Developers Guide and the Concepts Guide, and began reading. It wasn’t very long that I realized that my SQL data had to have some things changed. I was using character keys in FoxPro where integer keys would be better in SQL, so I spent the next two days (7/13-7/14) modifying my SQL data, and establishing primary keys, and relationships.
Then on the evening of the 14th, I started working with DevForce 3.1.5. I started building a “Hello, DevForce!” sample, based on your sample data. I finally wound up with a working project at 1:47AM in the morning.

View the screen shot section 1:

Somewhere in the process of building the Hello, DevForce! Project, I decided to begin building a project using my own data, and thus I started the SPAViewer project, and using the Object Mapper, added the company and parker tables, but didn’t get any farther than that.
After successfully running the Hello, DevForce! Project, and with my eyes threatening a mutiny, I finally went to bed.

My First “Real” Project

Beginning on the evening of the 15th, I focused completely on getting my SPAViewer application built and running.
By taking simple steps and referring to the Hello, DevForce! app when things didn’t make any sense, I was able to get the Company table to relate to the Parker table and display correctly on the form.
By late on the 18th, the SPAViewer app was finally done.
It took a total of 3 days, and probably about 25-30 hours to complete.
Also note that Add / Save / Delete functions are not supported in this application.
My sample app (named SPAViewer) displays 4 related tables from a much larger SQL database.
This shows information relating to monthly parking accounts at a parking management company in Chicago, IL.
This application consists of 4 separate forms. The database is SQL 2005. There are 4 tables involved:

SPALOCATION - Contains different locations (433 rows)
SPACOMPANY - Companies (and individuals) that park on a monthly basis at the various locations (27,164 rows)
SPAPARKER - Individuals that park at the location, associated with a particular company (42,506 rows)
SPAVEHICLE - Vehicles driven by individuals (37,699 rows)

View the screen shot section 2:

The binocular icon on the main form opens a CompanyLookup form:

View the screen shot section 3:

Users can choose a location to search in the CompanyLookup form, as well as filter based on Active and Individual flags in the Company table. The following view shows the list filtered for Active Corporate accounts only:

View the screen shot section 4:

On the main form, the list of parkers is specific to the company shown:

View the screen shot section 5:

For any parker, clicking the Vehicles tab will show the vehicles registered to the selected parker:

View the screen shot section 6:

Clicking the button in the Details column of either the Parkers or Vehicles grid displays the associated detail form:

First, the Parkers form – note that all parkers for the current company are available:

View the screen shot section 7:

Next, the Vehicles form, which only shows vehicles related to the current parker:

View the screen shot section 8:

This picture shows all forms open at the same time:

View the screen shot section 9:

Conclusion

Using DevForce, I was able to build this application in very little time compared to what it would have taken me to build an identical application without DevForce.

The application I built is very responsive, with the forms populating instantly when using either local data (on my machine) or remote data (through a VPN).

All in all, I wrote about 260 lines of code (I am counting lines that have nothing but open or close braces) to achieve this functionality.

I am very impressed with what I have been able to accomplish in a relatively short period of time with a product that I know very little about.

I look forward to building more projects with this incredible tool you call DevForce.