Converted VFP 3.0 Project

I have made a few changes to my 3.0 project and it seems to compile and run fine after compiling with 6.0 or 9.0.

Is there any advantage to 9.0 like better compatibility with Windows XP SP2 or Windows Vista

Thanks


Answer this question

Converted VFP 3.0 Project

  • SorinD

    SET ENGINEBEHAVIOR 90 is the default in VFP 9, so you don't need to include the command at all. Just take the attitude that you don't want any of the other settings and fix your queries.

    Also, to answer another of your questions, VFP 8 and later support WinXP themes.

    Tamar

  • Sankey

    The compatibility issues are not with Windows per se. VFP7+ became more WIndows compliant, to receive the Windows seal of approval. This means mainly they changed the locations of user files, added a Windows-compliant installer (Install Shield Express), and some changes to accessibility.

    Compatibility with Windows Vista, however you define it will be a function of the next release, code-named Sedna.

    The changes from VFP3.0 to VFP9.0 are huge but not in Windows compatibility but in adding a ton of funtionality, functions, commands, events, apps, objects, base classes, utilities, etc.

    Read the help files, especially the What's new section and the excellent ionformation we have in the Fox Wiki. Look at the "concordance" group of pages.

    http://fox.wikis.com/wc.dll Wiki~VisualFoxProVersionFeatureConcordance

    Also check the books at http://www.Hentzenwerke.com


  • HenrikB

    Thanks, in your opinion is it possible to change the SQL so it can be compiled in 9.0 and then if re-compiled in 6.0 by someone who does not have 9.0 the result will be the same

  • Sansao Machiana

    >in your opinion is it possible to change the SQL so it can be compiled in 9.0 and then if re-compiled in 6.0 by someone who does not have 9.0 the result will be the same

    Yes if you make it ANSI-92 compatible. It happens that in versions prior to VFP 8 you could create queries that could give erroneous results. This is especially tied to grouping and aggregation.

    What SET ENGINEBEHAVIOR TO 80|90 does is it creates a stricter parsing of the query forcing you to make it better (written).

    If you write them properly in VFP6 they work fine too.

    See:

    http://fox.wikis.com/wc.dll Wiki~Enginebehavior

    http://msdn.microsoft.com/library/default.asp url=/library/en-us/dv_foxhelp9/html/23b309b9-92ce-410c-9dd1-227c7f59c047.asp frame=true

     


  • Subrat10197

    As this is a data application, the biggest change may involve SET ENGINEBEHAVIOR. If at all possible make your queries more ANSI SQL compliant. Only use SET ENGINEBEHAVIOR 90

  • Angelvs

    Yes. Alex is quite correct.

  • vk_rajkumar

    Thank you,

    What about the ability to get the Windows XP UI with rounded buttons, etc Do 7, 8 or 9 do anything in that respect

    For example, I have noticed that even switching to VB.NET 2003 you still cannot get the full XP look in your applications if you set the wrong properties.

  • rsri

    Yes if you make it ANSI-92 compatible. It happens that in versions prior to VFP 8 you could create queries that could give erroneous results. This is especially tied to grouping and aggregation.

    Thanks for the tip, I do have to fix a bug where a search only returns results from the first entry when a 1 to many relationship is being searched.

    If I set it to 90 will the compiler detect a problem with the queries or just the interpretation will be different

    If I don't use the "set enginebehavior 90" command and just fix the queries to that level and then compile in 9.0 what would be the result

    I guess I could also do this:

    #IF VERSION(5) = 900
        SET ENGINEBEHAVIOR 90
    #ENDIF


  • Converted VFP 3.0 Project