Release Notes

Flex2SQL v17 Unicode Edition is the largest release of Flex2SQL in recent history. These release notes will give you a very brief overview of the areas of the product that have changed. Be sure to click the links to learn more about each topic.

The initial release includes 32-bit and 64-bit Unicode drivers for MS-SQL and Oracle. These new drivers will only work on DataFlex version 20 or greater. A Conversion Guide has been added to the documentation which will give you a detailed list of changes to the driver and what you’ll need to change in your code to use our new drivers. Additionally this guide explains how you can convert your database to Unicode.

One change to call special attention to is our new Code Complete support. All Flex2SQL commands and attributes will automatically popup as you’re writing code in the DF Studio. This is a feature many developers have been clamoring for and it’s finally here! You don’t need to do anything to make this work. Just include our f2s.pkg in your code and you’re good to go!

Driver Changes

  • Datetime Handling - All dates & datetimes are now handled as native types. No more datetime string format conflicts!

  • New Embedded SQL Interface - An entirely new eSQL interface allows statements to be called repeatedly with different parameters and even improves support for parameterized queries.

  • ANSI Support Removed - Because this driver is unicode ONLY, all of the logic related to OEM-to-ANSI and ANSI codepages has been removed from the product. This driver cannot be used with an ANSI database that contains anything beyond the first 127 ASCII characters.

  • Inverse Key Column Support Limited - Inverse key columns meant for descending indexes don’t have a logical equivalent in unicode and are no longer supported. Other uses of inverse key columns are still supported.

  • Driver/License Name Changes - Our new unicode drivers have been renamed. This means that your INT files/filelist must be updated. The migration utility will detect this situation and offer to batch update your filelist and/or INT files.

Code Changes

  • New Commands - These new commands will help you convert existing code with our conceptually new interface with ease. A new f2s_activate_driver command will load and verify our driver using smarter error handling.

  • Simple Command Replacements - These are commands that have been renamed to fit our new “f2s” naming scheme.

  • Commands with syntax changes - These commands have been renamed and also have changes in how they’re used.

  • Commands replaced by attributes - These commands (mostly getters/setters) have been replaced with attributes which inherently have a getter/setter interface via the Get_Attribute/Set_Attribute commands built into DataFlex.

  • Renamed Attributes - These are existing attributes that have been renamed to fit our new “f2s” naming scheme.

  • Commands removed - Many commands that were specific to ANSI/OEM support have been removed along with commands that were only used in very old versions of DataFlex.

  • Attributes removed - As part of our interface cleanup, certain older or rarely used attributes were removed.

New Packages

  • f2s_esql.pkg - This is a class based embedded SQL interface. It is an alternative interface to our new embedded sql commands. Expect this package to be updated with new features that just can’t be duplicated via the command interface.

  • cMertechImageParser.pkg - This package lets you embedded complex SQL without line continuation syntax. It does this by using the VERY old image format from early version of DataFlex. Using this new interface allows very large or complicated SQL statements to be embedded and used in your code as-is. No need to move parts of the SQL to a string and then add to it. One line of code is all it takes to load a huge SQL statement.

  • cMertechStructAnalyzer.pkg - Mertech released a version of this many years ago. This new version allows you to load a structure from an array, file buffer, or Data Dictionary with a single line of code. This is especially useful when building Thriftly based web APIs. The amount of “plumbing” code needed to extract data from a structure and then to put data back into a structure is drastically reduced using this new package that is included with Flex2SQL.

Documentation Changes

  • Online Documentation - We are moving all of our documentation online. Note that this is an on-going process and it will be updated regularly.

  • New Command Reference - All of the renamed/new commands have brand new documentation with better examples and explanations. Each command includes a reference to the old command it replaces and also related commands. Some commands include specialized notes to help avoid common pitfalls or to clarify more complicated usage patterns.

  • New Attribute Reference - All of the renamed/new/replacement attributes have new documentation with examples and explanations of when, where and how to use that attribute. If an attribute is only usable with a certain driver this is noted as well. Some attributes have optional syntax and where this is the case examples are given of how to use that optional syntax as well.