Advantage Developer Zone


Advantage Database Server 11.1 Available

Advantage Database Server 11.1 (

ADS 11.1 Includes:
Support for Latest Development Environments

• Delphi XE3 Support
• Visual Studio 12 Support

New Platform Support
Support has been added for:
• Windows Server 2012
• Windows Small Business Server 2011
• Windows 8

Security Enhancements
Several security enhancements were implemented to improve checks of incoming packet data, prevent DLL injection attacks, perform buffer validation, etc.

New System Procedure
The procedure sp_GetTableSizeInfo was added to be able to return information about physical table and memo files. See sp_GetTableSizeInfo in the Help File for details.

SQL Engine Enhancements
Enhancement has been made in the SQL engine to reduce recursion in expression parsing and evaluation. The changes greatly expand the size of the expressions that the SQL engine can evaluate without causing the "recursion depth error", and improve the speed of evaluating some large SQL expressions.

New Server Configuration Setting
The configuration setting Check_Free_Table_Access has been added to restrict free table access through data dictionary connections on a server wide basis.

Entity Framework Update
Added support for the .Skip() operator to the .NET Entity Framework Provider.

New UTC Timestamp Scalar and Expression Engine Function
Added CURRENT_TIMESTAMP_UTC() SQL scalar and NOW_UTC() expression engine function that returns a timestamp value of the current date and time in Coordinated Universal Time (UTC). UTC is the time zone of London England and widely used by applications that share time data across time zones.

New __rootdd Server-Side Alias
Added a system alias called __rootdd that resolves to the root dictionary path. This allows applications to connect to the root dictionary without knowing the actual path. As with any server-side alias, it also allows applications to connect to the root dictionary without having to expose the root dictionary with a network share. See server-side aliases for more information.

ExtraConnectString Property Available in Advantage Data Architect
The connection repository in Advantage Data Architect has been updated to expose the TAdsConnection ExtraConnectString property, which allows additional connection string properties to be provided for a connection. As with the other connection properties, this is persisted in the ads.ini file.

Service Updates:
Advantage Database Server

This Service Update of the Advantage Database Server addresses the following issues:

• Updated the permissions checking of SERVER:Admin and SERVER:Monitor roles on system procedures called from within user-defined stored procedures. With this change, it is possible, for example, to call sp_mgGetInstallInfo inside a user-defined procedure without the calling user being a member of SERVER:Monitor.

• Fix a bug that caused a 9092 error to be returned when executing a stored procedure with varying cursor output that resulted in a live cursor.

• Fixed a bug where the detail error message from a failed trigger could be lost.

• Updated AdsMgGetLockOwner, sp_mgGetLockOwner, sp_mgGetTableUsers, and sp_mgGetIndexUsers to return the Application ID.

• Fixed a bug in the server that could result in a 9110 error when evaluating a filter expression.

• Improved the error message returned when enabling query logging against a table with an incompatible schema.

• Fixed an issue where temporary tables could be created in an incorrect temp path for data dictionary connections.

• Fixed a bug that could result in ADT memo corruption when using encrypted free tables inside a transaction.

• Fixed a bug in the server that incorrectly resulted in 7058 errors being returned from the server during skip operations in index order.

• Fixed an issue where VO AEPs could cause an exception in the GetInterfaceVersion function.

• Fixed an issue where 2129 or 2239 may be retured when calling sp_EnableQueryLogging.

• Fixed a bug that resulted in a 5005 error when using the REPLACE scalar with Unicode data.

• Fixed an issue where a spurious 2229 (ambiguous identifier) error was returned when executing a scripted stored procedure that inserts or updates a table that has column names beginning with the _ (underscore) character.

• Fixed an issue that resulted in a 2136 error when executing a stored procedure with an input parameter of the type MONEY.

• Fixed a bug that caused a server crash when an invalid SQL statement with a large number of unbalanced open parenthesis was executed.

• Fixed an inconsistency that caused VFP EMPTY fields to be returned as NULL when creating a static cursor.

Advantage Client Engine (ACE)
This Service Update of the Advantage Client Engine (ACE) addresses the following issues:

• Fixed a bug that caused the SQL Command Line Utiltiy to report an incorrect number of rows affected for DDL statements.

• Fixed an issue that could corrupt the stack when a callback registered via AdsRegisterCallbackFunction101 was called.

Advantage Data Architect (ARC)
This Service Update of the Advantage Data Architect (ARC) addresses the following issues:

• Fixed an issue where exporting MEMO fields to Excel using ARC would place squares between characters.

• Fixed a 7078 error when using the Replicaiton Queue Viewer.

• Fixed an issue where the login prompt could be shown off screen if ARC was last opened on a secondary screen and that screen is no longer available.

Advantage Web Platform
This Service Update of the Advantage Web Platform addresses the following issues:

• Removed REPLACE scalar functionality from Advantage Web Platform due to security risks.

• Fixed Linux installers to place 64-bit shared objects in the correct location for Debian-based Linux distributions (including Ubuntu).

Advantage JDBC Driver
This Service Update of the Advantage JDBC Driver addresses the following issues:

• Fixed a bug in the JDBC driver that caused incorrect character data to be returned when the JVM is configured to use a default charset (e.g., file.encoding=UTF-8) that is different from the server's ANSI encoding.

Advantage TDataSet Descendant
This Service Update of the Advantage TDataSet Descendant addresses the following issues:

• Resolved an issue that led to Delphi XE2 and XE3 packages being incorrectly marked as "always build".

• Fixed a bug in the Delphi components that prevented CHAR and VARCHAR field types over 32K in length from being read correctly.

• Fixed a bug in the Delphi components that caused a 5005 error to be returned when setting a filter with a length greater than 64K.

• Fixed an issue that led to an "Unable to find the component class 'TAdsStringField'.." error in Lazarus.

• Added Support for Delphi XE3.

• Fixed in issue in the TAdsEvent Component that could lead to an Access Violation in 32-bit applications.


Advantage TDataSet Switch Utility
This Service Update of the Advantage TDataSet Switch Utility addresses the following issues:

• Improved TDataSet Switcher handling of 64-bit libraries for 64-bit capable Delphi IDEs.

Advantage ODBC Driver
This Service Update of the Advantage ODBC Driver addresses the following issues:

• Fixed a potential exception when using the 64-bit ODBC Administrator to add a new Advantage DSN on Windows 8.