trends you need to know for visual foxpro 9.0 and above
DESCRIPTION
Trends. Trends you need to know for Visual FoxPro 9.0 and above. German FoxPro User Group Rainer Becker Frankfurt/Germany. Rainer Becker. dFPUG Online offers Loose Leaf magazine VFP-DevCon Localisation Framework Visual Extend MVP, MCP Wizards & Builders GmbH. Session Topics. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/1.jpg)
Trends you need to know forVisual FoxPro 9.0 and above
German FoxPro User GroupRainer Becker
Frankfurt/Germany
Trends
![Page 2: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/2.jpg)
Rainer Becker• dFPUG
– Online offers– Loose Leaf magazine
• VFP-DevCon• Localisation• Framework Visual Extend• MVP, MCP• Wizards & Builders GmbH
![Page 3: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/3.jpg)
Session Topics
• Takeover of VFP-features• Advantages of Visual FoxPro• Microsoft Marketing• Advantages of Frameworks• Client/Server-Example• Internet-Example
![Page 4: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/4.jpg)
For a long time VFP inherited features from other Microsoft
products…
Now Microsoft is going to duplicate features of Visual FoxPro
in .NETAnd it is not only about features…
![Page 5: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/5.jpg)
Do not lots of things in .NET sound familiar?
• „You are not a true compiling language!“– common language runtime– now garbage collection is „cool“– obfuscation equals Refox-problem
• „Your are not three-tiered by nature!“– dataenvironment (kind of) in .NET
• all in one tool for programming tasks– upcoming except for reportwriter (see VFP9)
• migration problem to OOP / new concept– we lost half the community, why repeat that?
![Page 6: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/6.jpg)
Familiar Features in .NET• WinForms:
– Grid with various features– Drag & Drop Fields onto a Form (Grid)
• Data:– Local database engine with index– Asynchronous data access– Switching the underlying database– Adding validations to views (DBC-like)
• Debugging– debugout and so on…
![Page 7: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/7.jpg)
Familiar Features of frameworks• sorting in grids• login dialog• user and rights-management• saving position and so on per user• application update• localization features• data access for multiple backends• wizards and builders of various types• … incomplete list …
![Page 8: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/8.jpg)
After all these times…• Looking like a true survivor
– Nothing really new for VFP-developers– Been there, done that
• Feeling like a little kid– And, Yes!, They are excited about it!– Like we were once upon the time
• PS: We made a big mistake at the name contest– we should have renamed VFP to Whidbey!– they would have bought that stuff years ago…
![Page 9: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/9.jpg)
Anyhow, its a kind of a miracle• I do not know how YAG made it happen
– But they plan to do RAD now– And thats what we came from– And thats where they came from– Having lots of buddies in mgmt. has drawbacks
• Microsoft normally eats up addons of any kind– the VFP team was to kind to do so– instead they now eat up VFP itself!– with the advantage that there are no so many
framework vendors to really care about at .NET
![Page 10: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/10.jpg)
But its getting even worse!• Microsoft found out about community!
– they integrate community support into product– INETA, CodeZone, CLIP and other marketing
progs– they even adopt FoxWishList
• Microsoft found out about even more things– same language for database as for other tiers!– extending reporting features of SQL-Server– Team programming revisited
![Page 11: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/11.jpg)
If you are not part of the solution• you are part of the problem
– BTW: I wonder why the „Microsoft Nimbus“ never worked for VFP - its like King Midas of Criti…
• race for new features after takeover– none of competitor understood what 4GL was
meant for and who the customers are
• Lots of bad ideas that did not work e.g.:– VFP as middle-tier in VStudio
• Reason: It has to fit to current Microsoft overall strategy (one face to the customer)
![Page 12: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/12.jpg)
We tried to sell a lot of things…• Createobjectx (Remoting)• Transaction Server
– even questions in MCP-test for distributed applications
• UML-modelling / Rational Rose interface• Design Patterns (really sorry to say that)• Offline Views• Active Desktop• Integration with Visual Studio• no updates for reportwriter and other basic
tools
![Page 13: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/13.jpg)
But did it help to fulfill needs?• Running „as fast as the FOX“?
– Where is the performance advantage?
• Rapid Application Development– but how without a framework as there are
pitfalls all over the place for raw box apps– but how three-tiered if there is no natural
support for multi-layered architecture– but how at all if there are so many properties,
events, methods, commands, functions which are all great but you need to know so much…
![Page 14: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/14.jpg)
Customer Profile lost• GPF: General Profiling failure
– MVP group is kind of labor union that protects workers and members but not the jobless
• GPF+: Great Promises to false audience
• … profile description to be inserted here…
![Page 15: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/15.jpg)
The doc that can‘t heal himself…• We are proud that we
do not deliver what the client asked for but what the client needs
• But for ourself we asked for a lot of high-tech features neither we nor our colleagues needed, because– they were trendy in theory– we wanted to be part of the larger group– it was really interesting to play around with
them
![Page 16: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/16.jpg)
But where are the protagonists?• Steve, Whil and others blame the market
and Microsoft and are on Linux• Markus, Rick, Kevin, Rod ao move on to
where the Microsoft .NET „innovation“ is• Alf Borrmann, Markus Alt ao move on to
Rational Rose, UML and Modelling• Nathalie Mengel ao moved to Java• Still we are a lot of skilled VFP-developers!
– but there are not so many theorists any more
![Page 17: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/17.jpg)
Where does MS want to go?• As Steve Ballmer said regarding
competitors– they are going to „love them to death“
• As Yair Alan Griver said last year– it will take 3-5 years to have all important
features of VFP duplicated in .NET
• Till then at least I am pretty happy with the new version of Visual FoxPro!– and still do FPW-conversions <eg>
![Page 18: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/18.jpg)
But obviously we can learn…• as we are still standing• we know maintenance over years• we know conversion / transition of old
apps• we do real world work
![Page 19: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/19.jpg)
Advantages of Visual FoxPro
There are a lot of reasons to use Visual Foxpro as an integrated development environment for
datacentric apps
![Page 20: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/20.jpg)
Low Cost DE• No runtime fees for application
– Desktop, Network and Internet incl. Webservices
• No runtime fees for database engine– Desktop, Multi-user, Internet-applications
• No runtime fees for report designer / reports• Low cost for development environment• Various integrated tools included for all areas
– Plus various builders and wizards
• Install Shield Express for Rollout included
![Page 21: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/21.jpg)
Powerfull DE• Powerfull development language (Script)• Powerfull relational database
– alternative: Client/Server-Backend-Access
• Record- and SQL-data access integrated• Calculatable projects for development of
data-centric applications• Fast applications on high performance local
table engine• Long support time till 2014 for current
version
![Page 22: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/22.jpg)
Visual FoxPro Language• Hybrid programming language
– Procedural (great for batch jobs)• Self-modifying code or code generation• As scripting language for IIS (Active FoxPro Pages)
– Data-aware commands• Compiled commands for local database engine• Even very helpful in Client/Server scenario
– Object-based (like Visual Basic)• But Using real Containers instead of SimpleFrame
– Object-oriented (with Business Objects)• Subclassing even of ActiveX-controls• But Ignoring theory of total encapsulation
![Page 23: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/23.jpg)
Visual FoxPro Database• Hybrid database commands
– Fast Xbase table commands (records)– SQL (groups, CURrent Set of recORds)– Mixed use (xbase on cursor), my favorite
• Replace all a.val with b.val for seek( a.key, „b“)
• „Compiled“ database access– Critic: no strict type checking in language– Vice versa: always database comand strings…
• Top tool for ETL-processing– Extraction, transformation, loading for
datawarehouse
![Page 24: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/24.jpg)
Visual FoxPro Specialties• OOP Special:
– Awareness of parent and all other objects – Container subclassing incl. ActiveX-Controls– Ease of Redirection of subclassing– Not Collection-oriented only
• PROG Special:– Evaluate, Macro, Excescript, Compile– Definition files are tables– Command window for direct execution
![Page 25: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/25.jpg)
Tools built in VFP by VFP-developers
• FFC - Lisa Slater Nicholls and Ken Levy • Class Browser - Ken Levy• Component Gallery - Ken Levy• Object Browser - Markus Egger• Rational Rose Wizard - Markus Egger• TaskPane in VFP 8.0 - Ryan Katri and Beth Massi• CursorAdapter/DataEnvironment Builders- Doug
Hennig• SuperClass - Ken Levy - toolbar, then in Class
Browser• IntelliSense – Calvin Hsia
![Page 26: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/26.jpg)
Visual FoxPro 8.0• Taskpane, Toolbox, Code Reference• Eventbinding• Try-Catch-Errorhandling• Visual Subclassing for page, column, …, …• Collections• CursorAdaptor• Delayed Databinding• AutoIncrement-Fields• Hyperlinks
![Page 27: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/27.jpg)
Visual FoxPro 9.0• Extended reportwriter with protected mode• No limits in SQL-statements and other areas• Extended SQL-syntax• New data types and data functions• Docking and resizing for own forms• Graphic functions• Enhanced property sheet with builder support• Background compilation
![Page 28: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/28.jpg)
Visual FoxPro in numbers
![Page 29: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/29.jpg)
The VFP-community in numbers• Questionnaire from Microsoft Corp.,
Redmond
• More than 100.000 active developers• About 15.000 active in online communities• 125 Usergroups and 8 conferences
• 54% use SQL-Server and/or MSDE• 18% use .NET (compact framework, ASP)
![Page 30: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/30.jpg)
Microsoft Marketing
How to talk about something that is not really existing for VFP <eg>
What could be done instead?
![Page 31: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/31.jpg)
3 times moving is like 1 time burned town
• Recommendation 1: Use Access instead as the main desktop database tool from Microsoft
• Recommendation 2: Integration with Visual Studio 97, use Visual Studio instead
• Recommendation Internet: Use ASP– Do you remember Visual InterDev?– Where are Dashboards & WebParts nowadays?
• Recommendation 3: Use Visual Studio.NET– Maybe they should migrate Office first?
![Page 32: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/32.jpg)
Why this confusion?• No dedicated product managers on country
level• But: Allowance to attack other own products• Main marketing line „One face to the customer“ • Development tools only to support Windows-
environment and not as a real business unit– No need/allowance to support older versions– No need to earn money with existing customers
• Main focus on selling updates / new versions– Role switching every two years, short term numbers
are very important
![Page 33: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/33.jpg)
Technical advantages• Take-over of new idea and code from
other Microsoft products and departments• Development of the product • Support of current versions of Windows• Life cycle support garantue• Support program for communities
– Not really for VFP-communities
• Still largest supplier in former XBASE-markte
![Page 34: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/34.jpg)
Marketing disadvantages• Never ending „FoxPro is dead“
– Low visibility outside of VFP-community
• Never ending „We still sell this?“– Low visibility within Microsoft company
• No press work• Non-successfull strategic decisions to fit
into most current Microsoft marketing masterplan
![Page 35: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/35.jpg)
Now we have a look how it could be!
• Online website of a competitor– Visual FoxPro is a superior tool compared to offer– But marketingwise they are looking much better– And address a „completly different market“
HAVE A LOOK NOW
• Marketing outside of the VFP-community needed– Real market is not the update-market MS prefers– Market has to be accessed by Third-Party
![Page 36: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/36.jpg)
Recommendation• Visual FoxPro 9.0 is a
powerfull version each and every VFP-developer should get right away
• Short term best results could be achieved with powerfull frameworks
• Long term MS will still try to move VFP-community to .NET – even if it is „impossible“ to make all features available
![Page 37: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/37.jpg)
Advantages of Frameworks
There are a lot of standard features needed for rapid
application development, here an example
![Page 38: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/38.jpg)
Visual Extend Capabilities• Proven framework with standard functions• Rich set to enhance enduser application• Builders for Rapid App. Development• Standardized Design & Layout
– Standard forms for various tasks– Grid-Page for search, Edit-Pages for details
• Sourcecode included except Builders• No Business Objects, just 2-Tier-Apps
![Page 39: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/39.jpg)
Rapid Application Development• 2 tiers are most often enough for a good
and fast application of small to medium size
• Customers often are not willing to pay much higher price for maybe lower maintenance cost in the future
• Business functions can still be encapsulated in classes which are to be used by the GUI, but these do not have to be clean BOs
![Page 40: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/40.jpg)
Rapid Application Conversion• If you do not try to re-invent the wheel
conversion of FoxPro/Windows applications with the help of a framework is pretty fast-forward as you can take over tables, reports and batch-code
• It is „kind of a re-write“ but not really as you can reuse your knowledge and rebuild the application very fast in VFP
![Page 41: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/41.jpg)
Client/Server Example
Cursor Adaptor class really helps in building two-tiered applications
which are a must nowadays
![Page 42: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/42.jpg)
Data Access Theory• Cursor Adaptor
– Class: Properties, Methods– VFX Connection Manager
• Advantages– Data source can be switched at runtime– Access information encrypted– Support for DBC– Support for SQL-Server
• Special: Fat Client data access via Internet– Used by us for e.g. webshop update and
registration
![Page 43: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/43.jpg)
Sample Application• Venelinas• Fantastic• Pizzas
![Page 44: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/44.jpg)
VFPizza• Completly based on Cursor Adaptor
– Optimized data access with where-clauses
• Runs on DBC and SQL-Server• Uses linked child forms
– See VFX parent/child-builder
• OnetoMany-Forms with picklist• Treeviewform• Localization at runtime
![Page 45: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/45.jpg)
Data Access in practise• VFX Cursor Adaptor Wizard• Create new form with VFX Form wizard• Test• Upsize• Manage Config.vfx
![Page 46: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/46.jpg)
New Features for developers• Taskpanes• Project Update Wizard• Application Builder• Cursor Adaptor Wizard• Parent/Child Builder• Audit Trigger Wizard• Project Documenting
![Page 47: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/47.jpg)
New application Features: Traders• Based on tastrade.dbc• Office compatible• Print to eMail and fax• 1:n-forms with picklists• Product activation• Product internet update
– Customer management– Version management
• Remote administration
![Page 48: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/48.jpg)
New application Features: Test• User groups• Document container• cOnetoManyPageFrame• Business graphics• Menue Extras
![Page 49: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/49.jpg)
Internet Example
Powerfull features that should have been integrated into Visual
FoxPro a long time ago!
![Page 50: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/50.jpg)
Pre-requisites• Create Internet forms with one mouse click
• Visual FoxPro 9.0• Visual Extend 9.0• Internet Information Server• Active FoxPro Pages
– Or Active Extend Server
![Page 51: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/51.jpg)
Current results• Transformation of layout including pages• Validations have to be moved manually• Support for VFX-forms only• Support for DBC / DBF only• User-Login• XPOpen-Dialog• Various standard features• Small compatible framework to manage
code
![Page 52: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/52.jpg)
VFX 9.0: Test now• 30 days free trial version• Example VFPizza• Example VFXTraders• Example VFXTest• VFX-Internet-Wizard included• Manual in German/English• Newsgroup / forum support• Portal with lots of documents
![Page 53: Trends you need to know for Visual FoxPro 9.0 and above](https://reader036.vdocuments.mx/reader036/viewer/2022081603/5681350b550346895d9c5d0b/html5/thumbnails/53.jpg)
Thank You!
Visit our websites at http://www.dfpug.de, http://portal.dfpug.de, http://forum.dfpug.de,
http://newsletter.dfpug.de, http://devcon.dfpug.de, http://roadshow.dfpug.de, http
://www.visualextend.com, http://www.linuxtransfer.de, http://www.visualfoxpro.de