>This is where my experience differs from yours. My app works very well in DOS. While upgrading it to VFP I was surprised that I litterally had to rewrite every single line ..., that is not necessarily a VFP problem, but it _is_ a surprise no less.
You know the story of two kinds of lazy programmers... so when I realized how much work it is to port my forms from FPD from VFP, and seeing I'll have to do same things over and over, I sat and wrote a converter. My 2.6 screens were using alias.field, but the generated program always made it m.field (used insert/gather), so all the Valid and other functions used m.field syntax; this meant I had to accomodate for custom methods on my forms and parse/replace all the function/procedure/variable names and port them to new syntax (thisform.field.value instead of m.field, thisform.routine() instead of routine() etc), but once I got that to work, it worked like charm. Maybe writing such a thing would be an overkill in your case, but I sure needed that - I'm planning to convert some 40 apps with few hundred forms.