SQL Server Data Access Components Revision History

13.0.1 15-Jun-26

  • Fixed an issue with handling names that contain consecutive dots in Direct mode

13.0.0 27-Mar-26

  • Added support for RAD Studio 13 Florence Release 1
  • Added support for the Arm64EC target platform
  • Added support for Lazarus 4.6
  • Added the CommandTimeout option to TMSConnection
  • Added the "For the current user/For all users" option during installation
  • Added masking of the Password property in the Connection component to prevent it from being stored in memory as plain text
  • Added the GetWhere method to the TCustomDADataSet component
  • Added the DeleteOrderBy method to the TCustomDADataSet component
  • Added the RangeFieldCount property to TCustomDADataSet to specify the number of indexed fields used for range setting
  • Added the AutoClose option to TCustomDADataSet to control automatic closing of a dataset when its associated ClientDataSet is closed
  • Fixed an issue that caused incorrect record sorting in a dataset when both ORDER BY and IndexFieldNames are used
  • Fixed an issue with the ConnectString property in the Connection component when its value contained a sequence of SQL comment characters
  • Fixed an issue in tunnel.php that required establishing a tunnel connection in a browser first

12.0.1 26-Dec-25

  • Added support for Lazarus 4.4
  • Added the DescribeFields option to control calls to the sp_describe_first_result_set procedure
  • Extended support for the Connection component's AllowImplicitConnect property to the Script and SQL components
  • Fixed a hang that could occur when using pessimistic locking in Pooling mode
  • Fixed an AV failure that could occur when reading a persistent TWideStringField in Delphi 7
  • Fixed an issue where XML fields could be saved incorrectly when using the dataset component's SaveToXML method
  • Fixed an issue with registering help files in RAD Studio 13
  • Fixed an access violation that could occur when reopening the master table with LocalMasterDetail set to True
  • Fixed a possible nil reference to Encoding in the TParser constructor

12.0.0 17-Sep-25

  • Added support for RAD Studio 13 Florence
  • Added support for Lazarus 4.2
  • Added the KeepMultipleResults property to TMSDataSetOptions to enable opening subsequent result sets in TClientDataSet
  • Added support for Bearer Token authentication when connecting through HTTP tunnel
  • Added the MSOLEDBEncryptType connection option for the MSOLEDB provider
  • Added the UseNoBrowseTable connection option to prevent calling "SET NO_BROWSETABLE ON"
  • Added support for the MERGE batch operation
  • Added support for system proxy settings to the TProxyOptions class for HTTP tunnelling
  • Added the Pooled function to the TCustomDAConnection component
  • Added support for ReportBuilder 23 in the Demo project
  • Fixed a bug where the tunnel.php file was missing from the installer
  • Resolved an issue where looping through a dataset caused an "Invalid pointer operation" exception
  • Fixed the error message for distributed transactions in Direct mode
  • Resolved an issue where all connections were removed from the pool if TPoolingOptions.MinPoolSize was set to a value greater than 0
  • Resolved an issue where getting the record count failed if the query contained an ORDER BY clause
  • Resolved an issue with C++Builder compilation
  • Resolved an issue that caused a memory leak in the GetIPInterfaces procedure
  • Fixed paths in *.dproj files for IOHandlers and updated the documentation

11.4.1 07-Jul-25

  • Added support for Lazarus 4.0
  • Fixed a bug with auto-generating queries for tables containing special characters in their names
  • Fixed a bug with updating aggregate fields when refreshing a Detail dataset in a master/detail relationship
  • Fixed a bug where an additional connection to the server was created after fetching multiple result sets
  • Resolved an issue with declaring the TValueArr data type in C++ Builder
  • Fixed a bug where setting SQL in the Query component changed the case of a parameter name
  • Fixed a bug that occurred when calling the FindKey method on a cloned dataset
  • Fixed a bug that occurred when reserved words were used as field names in filters

11.4.0 20-Mar-25

  • Added support for RAD Studio 12 Athens Release 3
  • Added support for the RAD Studio 64-bit IDE
  • Added support for Lazarus 3.8
  • Added support for parameters in the Script component
  • Added the Charset connection option for the Direct mode
  • Added support for the TurboPack SynEdit package in component editors
  • Added support for syntax highlighting in component editors in Lazarus on the Windows platform
  • Added the IndentFormat argument to the SaveToXML method of the dataset to decrease file size
  • Added the SaveToJSON method for serializing a dataset to the JSON format
  • Added the ability to use readonly fields in the SQL Generator at design-time
  • Improved work with design-time editors in the High DPI mode
  • Fixed a bug with ambiguity between the CRJSON.TJSONObject and System.Json.TJSONObject classes
  • Fixed a bug with limitations for the PacketSize connection option for the Direct mode

11.3.2 20-Jan-25

  • Added the TrustSelfSignedCertificate connection option for the Direct mode
  • Added the HostNameInCertificate connection option for the prMSOLEDB provider
  • Added the ServerCertificate connection option for the prMSOLEDB provider
  • Moved the CRFunctions.CRTimeZoneInformation global variable to the interface section
  • Fixed a bug with processing string fields that occurred when the UTF-8 code page was used
  • Fixed a bug causing string truncation when using TMSLoader
  • Fixed a bug with handling special characters in parameter names
  • Fixed an issue with binding ftFMTBCD parameters by OLE DB providers
  • Fixed an issue where an "Unspecified error" exception occurred upon connection loss in the prMSOLEDB provider
  • Fixed an issue with the SaveToXML method of the TMemDataSet class and its descendants, which occurred when saving UUID fields
  • Fixed a bug that occurred when calling the RefreshRecord method with FullRefresh set to True
  • Fixed an issue with processing the Filter property of a dataset that occurred when it included the NOT operation
  • Fixed an issue with using subfunctions in a filter

11.3.1 24-Oct-24

  • Restored support for RAD Studio 12 Athens Release 1
  • Added support for Lazarus 3.6

11.3.0 27-Sep-24

  • Added support for RAD Studio 12 Athens Release 2
  • Added support for C++Builder 64-bit Windows (Modern) Application Development
  • Added support for Lazarus 3.4
  • Added support for Variant OUT parameters in Direct mode
  • Added C++Builder demo components for working with SecureBridge
  • Fixed bug with preparing SQL statements that contain varbinary(max) parameters
  • Fixed bug with transaction handling when executing a stored procedure in the Direct mode
  • Fixed bug with fetching data in the NonBlocking mode
  • Fixed bug with "The SQL statement is not allowable for a bulk operation" when enabling the context of a change
  • Fixed bug with memory leak in Trial Edition
  • Fixed bug with string param value truncation when using the prSQL provider
  • Fixed bug with processing datetime fields in SQL Server Compact Edition
  • Fixed bug with binding time parameters by OLEDB providers

11.2.1 01-May-24

  • Now Release 1 for RAD Studio 12 Athens, Delphi 12 Athens, and C++Builder 12 Athens is required
  • Fixed internal bug with TSharedObject

11.2.0 24-Apr-24

  • Added support for RAD Studio 12 Athens Release 1
  • Added support for Lazarus 3.2
  • Microsoft Entra Service Principal authentication (auADServicePrincipal) in the prMSOLEDB provider is supported
  • Fixed bug with Microsoft Entra identity authentication (auADInteractive) in the prMSOLEDB provider
  • Fixed bug with updating datetime fields by OLEDB providers
  • Fixed bug with a zero-valued LastInsertID result

11.1.0 19-Feb-24

  • Added support for Lazarus 3.0
  • Fixed bug with preparing Stored Procedure execution
  • Fixed bug with setting parameter values on record posting
  • Fixed bug with SQL Generator in the design-time when the database name must be quoted

11.0.0 15-Nov-23

  • Added support for RAD Studio 12
  • Added support for SQL Server 2022
  • Added support for macOS Sonoma
  • Added support for iOS 17
  • Added support for Android 13
  • Added AddDateTimeFormat option for the Dump component
  • Added support for nested Macros in SQL queries
  • Added support Display Format for Aggregate fields
  • Added SHA-2(SHA-256, SHA-512) in hash algorithm for encryption
  • LastInsertId property for TMSSQL and TMSQuery is added
  • Fixed bug with connecting to the default instance
  • Fixed bug with "Wrong amount of parameters N in TableName" when the TableName contains spaces
  • Fixed bug with detecting parameter names
  • Fixed bug with moving the cursor when using Aggregate fields
  • Fixed bug with deleting a record when using Aggregated fields
  • Fixed bug with storing empty Aggregates collection in DFM
  • Fixed bug with AV when installing a package in the IDE
  • Fixed bug with AV in the CloneCursor method of the dataset
  • Fixed bug with using Aggregated and InternalCalc fields together
  • Fixed bug with duplicate resource IDs in CBuilder
  • Fixed bug with using "NOT Field LIKE" construction in Filter property

10.3.0 17-Mar-23

  • Added support for RAD Studio 11 Alexandria Release 3
  • Added support for iOS Simulator ARM 64-bit target platform
  • Added support for Lazarus 2.2.6
  • Added support for the YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, GETDATE, DATE, TIME, TRIM, TRIMLEFT, TRIMRIGHT statements in TDADataSet.Filter
  • Added support for the mathematical operations in TDADataSet.Filter
  • Added support for Aggregate Fields and InternalCalc Fields
  • Added ability to restore from file with TEncoding via the Dump component
  • Improved compatibility with Linked Server in MSSMS
  • Improved the GetOrderBy method behavior
  • Now the SetRange will function according to the case sensitivity of keywords in IndexFieldNames
  • Fixed bug with Unicode (UTF-8) in the Direct mode for Windows
  • Fixed bug with an assertion failure in the CachedUpdate mode
  • Fixed bug with connecting to default instance by prSQL(SQLOLEDB.1) provider
  • Fixed bug with fetching datetimeoffset fields in the Direct mode
  • Fixed bug with fetching sql_variant fields in the Direct mode
  • Fixed bug with preparing a stored procedure in the Direct mode

10.2.0 12-Sep-22

  • Added support for RAD Studio 11 Alexandria Release 2
  • Added support for Lazarus 2.2.2
  • Added support for iOS 15
  • Added support for Android 12
  • Added support for Microsoft OLE DB Driver for SQL Server 19
  • Added support for Azure AD authentication support for the Microsoft OLE DB provider
  • Added support for the Always On availability group in the Direct mode
  • Added support for connection to the Azure database by using the "Redirect" connection policy in the Direct mode
  • Added the CloneCursor method for Query and Table components that allows sharing data between datasets
  • Improved the performance of exporting to XML
  • Fixed bug with committing transaction on SQL Server 2000 in Direct mode
  • Fixed bug with restricting the list of procedures using PROCEDURE_TYPE condition in Metadata component
  • Fixed bug when a connection string parameter value contains a single quote

10.1.1 12-Apr-22

  • RAD Studio 11 Alexandria Release 1 is supported
  • Lazarus 2.2.0 is supported
  • Windows 11 is supported
  • macOS Monterey is supported
  • Passing the "client_interface_name" parameter to the server in the Direct mode is added
  • Fixed bug with adding a condition to the WHERE clause on calling the AddWhere method
  • Fixed bug with a "Cannot modify a read-only dataset" on Delete where all fields are read-only
  • Fixed bug with executing batch operations when constants in parameters
  • Fixed bug with resetting param values when changing param values count
  • Fixed bug with getting IndexColumns metadata in the Direct mode
  • Fixed bug with removing persistent fields in Android
  • Fixed bug with AV when encrypting a field
  • Fixed bug with HTTPS tunneling in the Direct mode
  • Fixed bug with AV when using the TCRSSLIOHandler from the SecureBridge demo project as an IOHandler for a connection

10.0.2 09-Dec-21

  • The PoolId connection pool option is added
  • Fixed bug with setting the port number to the Server property in Direct mode
  • Fixed bug with Varchar(max) and Text OUT parameters in Direct mode
  • Fixed bug with describing string params in the Direct mode
  • Fixed bug with leading spaces getting trimmed in strings loaded from XML in VirtualTable
  • Fixed bug with freezing multiply connection pools in threads
  • Fixed bug with using the AsDate property when working with fields of the ftDate type
  • Fixed bug with updating the state of records at applying cached updates

10.0.1 13-Sep-21

  • RAD Studio 11 Alexandria is supported
  • macOS ARM is supported
  • Added demo project for FastReport FMX
  • Fixed bug with using the NonBlocking mode from threads
  • Fixed bug with Varchar(max), NVarchar(max), Text and NText OUT parameters
  • Fixed bug with setting a DateTime value before the year 1800 to TTimeField
  • Fixed bug with using a BLOB field in the IndexFieldNames property of the DataSet component
  • Fixed bug with memory leak on Locate by field with data type mapping
  • Fixed bug with escaping wildcards in the Filter property of the DataSet component
  • Fixed bug with the AV failure when reading the BLOB fields data in Lazarus

9.4.4 14-Jul-21

  • Support for TFieldOptions is added
  • Retrieving Indexes metadata for OLE DB providers is improved
  • Bug with applying both Encryption and Data Type Mapping on a BLOB column is fixed
  • Bug with AV when encrypting a field is fixed
  • Bug with closing an SSL connection in the Direct mode is fixed
  • Bug with processing transactions in TMSLoader is fixed
  • Bug with a Range check error when fetching more than 255 columns is fixed
  • Bug with 'Unknown datatype (24)' when creating a dump is fixed
  • Bug with AV after adding the Lookup field to a prepared DataSet is fixed

9.4.3 06-Apr-21

  • Bug a string parameter getting trimmed is fixed
  • Bug with assigning a BLOB parameter when the source data is loaded via the TParam.LoadFromStream method is fixed

9.4.2 26-Mar-21

  • Lazarus 2.0.12 is supported
  • Bug with the data type mapping of varbinary fields is fixed
  • Bug with the ConvertEOL connection option is fixed
  • Bug with AV in applications using DBMonitor is fixed
  • Bug with committing a transaction when LockMode = lmPessimistic is fixed
  • Bug with getting values of calculated fields is fixed

9.4.1 02-Mar-21

  • RAD Studio 10.4.2 Sydney is supported
  • macOS 11 Big Sur is supported
  • iOS 14 is supported
  • Android 11 is supported
  • LOB read/write performance in the Direct mode is improved
  • Performance of batch operations is improved
  • Performance of the FindFirst, FindNext, FindLast, and FindPrior methods is improved
  • Bug with setting the ReadOnly field property at runtime is fixed
  • Bug with 'Range check error' in the Direct mode is fixed
  • Bug with getting the list of server names is fixed
  • Bug with string data getting truncated in TMSLoader is fixed
  • Bug with converting memo fields to the local encoding is fixed
  • Bug with "Session ID is not found" when starting a transaction in the Direct mode is fixed
  • Bug with "c0000091 FLOAT_OVERFLOW" when fetching records in SQL Server Compact Edition is fixed
  • Bug with rounding DATE values is fixed
  • Bug with describing date params in the Direct mode is fixed

9.3.2 14-Sep-20

  • Now Release 1 for RAD Studio 10.4 Sydney, Delphi 10.4 Sydney, and C++Builder 10.4 Sydney is required
  • Incompatibility of DatasetManager with RAD Studio 10.4 Release 1 is fixed
  • Bug with the "Wrong amount of parameters 4 in TableName" error when retrieving data from a linked server is fixed
  • Bug with an assertion failure when manually creating parameters is fixed

9.3.1 26-Aug-20

  • SQL Server 2019 is supported
  • Lazarus 2.0.10 and FPC 3.2.0 are supported
  • Performance of Batch Insert, Update, and Delete operations is improved
  • Failure to connect in the Direct mode with different credentials after unsuccessful initial connection attempt is fixed

9.2.4 01-Jun-20

  • RAD Studio 10.4 Sydney is supported
  • Lazarus 2.0.8 is supported
  • macOS 64-bit in Lazarus is supported
  • Bug with setting a value for the TrustServerCertificate option is fixed
  • Bug with switching databases in Direct mode is fixed
  • Bug with locating a record by a fixed string column in the Chinese locale is fixed
  • Bug with LocalMasterDetail when DataTypeMapping is enabled is fixed

9.1.3 10-Mar-20

  • Bug with installing different editions of two or more DAC's in a single system is fixed
  • The UuidWithBraces option is added
  • Performance of loading data with TMSLoader in Direct mode is improved
  • Bug with reconnecting to the server is fixed
  • Bug with connecting after a server connection failure is fixed
  • Bug with assertion failure when opening datasets is fixed
  • Bug with opening several datasets in batch is fixed
  • Bug with performing a TLS 1.2 handshake during connection attempt to the server is fixed
  • Bug with getting the value of the RETURN_VALUE parameter from SP is fixed
  • Bug with SQL statements that contain fields with the same name from different tables is fixed
  • Bug with executing SQL statements that contain comments using the Script component is fixed
  • Bug with resetting the value of the parameter after adding a new TDACondition is fixed
  • Bug with reading a field value using the AsBytes method in Lazarus is fixed
  • Bug with using constraints after calling the Refresh method is fixed
  • Bug with the "Function is not linked" error when connecting to the server on iOS is fixed

9.1.2 26-Nov-19

  • Android 64-bit is supported
  • Lazarus 2.0.6 is supported
  • TLS 1.2 support in the Direct mode is added
  • Now Trial edition for macOS and Linux is fully functional
  • The connection option MultiSubnetFailover for the MSOLEDB provider is added
  • Use of the Server property that contains Port in the Direct mode is added
  • Updating data after invoking the Refresh method is fixed
  • Bug with connecting to SQL Server 2000 in Direct mode is fixed
  • Bug with the NativeClientVersion connection option being set from ConnectionString is fixed
  • Bug with AV failure when using encryption is fixed
  • Bug with using the FieldOrigins property is fixed
  • Bug with the Loader component when UniDirectional set to True for source dataset is fixed
  • Bug with "Record changed by another user" error when LockMode <> lmNone is fixed
  • Bug with mapping to BCD fields when TClientDataSet is used is fixed
  • Bug with resetting the range values when executing the Refresh method is fixed
  • Several bugs that occurred when using DataSet Manager are fixed
  • Bug with establishing SSL connection is fixed

9.0.1 22-Jul-19

  • macOS 64-bit is supported
  • Release 2 for RAD Studio 10.3 Rio, Delphi 10.3 Rio, and C++Builder 10.3 Rio is now required
  • Bug with the "StoredProc has too many arguments specified" error when executing SP is fixed
  • Bug with using the AsMemo method in batch operations is fixed

8.3.10 24-Jun-19

  • Lazarus 2.0.2 is supported
  • Working with multiple threads sharing a single connection is supported
  • The DefaultSortType property for TVirtualTable is added
  • Performance of the SaveToFile/LoadFromFile methods of TVirtualTable is significantly increased
  • Bug with the 'OnError' event generation is fixed
  • Bug with setting the connection options for the MSOLEDB provider is fixed
  • Bug with an assertion failure when saving datetime value is fixed
  • Bug with using the FieldOrigins property is fixed
  • Bug with the AV failure when executing the Refresh method is fixed
  • Bug with calculating percentage in the OnRestoreProgress event in the TDADump class is fixed
  • Bug with the StackOverflow exception when using batch operations in CBuilder is fixed
  • Bug with using the SetRange method is fixed

8.2.9 21-Jan-19

  • Bug with the "Cannot modify a read-only dataset" error in Android is fixed
  • Bug with AV failure in the Refresh method in RAD Studio 10.2 Tokyo on Linux is fixed

8.2.8 26-Nov-18

  • RAD Studio 10.3 Rio is supported
  • TfrxSDACDatabase.DefaultLockTimeout property is added
  • QuoteNames option in TMSLoader to escape field names is added
  • Support of UPPER and LOWER functions for Unified SQL is added
  • Bug with mapping a TEXT field to ftWideMemo in Delphi is fixed
  • Bug with SQL statements containing a CONTAINS predicate in the WHERE clause is fixed
  • Bug with application freezing when executing a stored procedure is fixed
  • Bug with editing the ConnectString property in TMSConnection in design-time editor is fixed
  • Bug with XML field types when clearing data is fixed
  • Bug with setting "MSOLEDBSQL.1" value for the TMSConnection.ConnectString property is fixed
  • Bug with using the FieldOrigins property is fixed
  • Bug with using the TrimFixedChar property is fixed
  • Bug with saving a dataset that contains BLOB fields to XML is fixed

8.1.7 17-Sep-18

  • Support for Microsoft OLE DB Driver for SQL Server (MSOLEDBSQL) is added
  • Support for connecting to SQL Server using a server alias in the Direct mode is added
  • Automatic detection of the initial value of an AutoInc field in TVirtualTable is supported
  • Now the SetRange method supports Null values
  • The enumerated property FieldOrigins is added
  • The Boolean property FieldsOrigin is deprecated
  • Bug with AV when using custom constraints is fixed
  • Bug with Runtime error 231 when getting a lot of database errors in one statement under Windows x64 is fixed
  • Bug with getting a list of key fields for SQL Server Compact Edition is fixed
  • Bug with "Windows Authentication is not supported under non Windows environment" when connecting to a database on Android is fixed
  • Bug with suspending application with using NonBlocking in the Direct mode is fixed
  • Bug with application freezing when using NonBlocking in the Direct mode is fixed

8.1.6 09-Jul-18

  • Lazarus 1.8.4 is supported
  • MARS in TDS is supported
  • NonBlocking mode in TDS is supported
  • Query notifications in TDS are supported
  • TCustomMSDataSet.CommandTimeout property in the Direct mode is supported
  • Performance of batch operations is improved
  • Demo projects for IntraWeb 14 are added
  • Memory leak in NEXTGEN is fixed
  • Bug with processing parameters with ftUnknown data type is fixed
  • Bug with processing transaction descriptors is fixed
  • Bug with re-deleting the service by TMSChangeNotification is fixed
  • Bug with updating a record when using the OnFilterRecord event handler is fixed
  • Bug with using encryption and CacheCalcFields option is fixed
  • Bug with using a backslash in the Filter property is fixed
  • Bug with using First method in the Master-Detail relationship is fixed

8.0.5 02-Apr-18

  • Lazarus 1.8.2 is supported
  • Now Detail dataset is not refreshed when Master dataset editing is started.
  • Bug with executing batch operations with iteration = 1 and offset = 0 is fixed
  • Bug with re-opening a filtered dataset is fixed
  • Bug with data decryption in SmartFetch mode is fixed
  • Bug with data truncation while decrypting is fixed
  • Bug with processing parameters with ftUnknown data type is fixed

8.0.4 18-Jan-18

  • Lazarus 1.8 and FPC 3.0.4 are supported
  • Windows authentication in the Direct mode is supported
  • Support for custom constraints is added
  • The UseBlankValues property for the Loader component is added
  • Bug with memory leak in the Direct mode when UniDirectional is True is fixed
  • Bug with fetching data in the NonBlocking mode is fixed
  • Bug with AV failure on processing widestring parameter of large size is fixed
  • Bug with AV failure in TMSChangeNotification is fixed
  • Bug with script parsing in TDAScript is fixed
  • Bug with calling RefreshRecord when setting FullRefresh to True and using encryption is fixed
  • Bug with assertion failure when adding Calculated fields after calling Prepare is fixed
  • Bug with using the AsDateTime property when working with fields of the ftDate or ftTime type is fixed
  • Bug with assertion failure when using the OnFilterRecord event handler is fixed
  • Bug with AutoInc fields in TVirtualTable is fixed
  • Bug with AV in TVirtualDataSet when editing Blob is fixed

8.0.3 19-Sep-17

  • Bug with processing varchar fields when AutoTranslate is True in the Direct mode is fixed
  • Bug with processing a field with alias for query with the JOIN statement is fixed
  • Bug with generating SQL for batch updates is fixed
  • Bug with the Locate method for non-Windows platforms in Lazarus is fixed
  • Bug with the FindFirst, FindLast, FindNext, FindPrior methods in Lazarus is fixed
  • Bug with accessing a product help from the IDE menu is fixed
  • Bug with recreating fields when calling Open after Prepare is fixed
  • Bug with an incorrect error message when using the Connect dialog component on mobile platforms is fixed
  • Bug with AV failure when using calculated fields in TClientDataset is fixed
  • Bug with a key violation error when executing batch operations is fixed
  • Bug with Assert when calling the Locate method in the SmartFetch mode is fixed
  • Bug with date and time fractional seconds precision when DescribeParams = True is fixed
  • Bug with using DAC components in DataModule for Linux is fixed

8.0.2 15-May-17

  • Bug with processing NULL values in the Loader component is fixed
  • Bug with executing a query after executing a batch command is fixed
  • Bug with using the AsGuid property is fixed
  • Bug with the "Invalid column name" error when editing a query with the JOIN statement is fixed

8.0.1 05-Apr-17

  • RAD Studio 10.2 Tokyo is supported
  • Linux in RAD Studio 10.2 Tokyo is supported
  • Lazarus 1.6.4 and Free Pascal 3.0.2 is supported
  • Bug when working with the TBytes and TVarBytes fields in TVirtualTable is fixed
  • Bug with detecting parameters by name in ExecSQLEx is fixed
  • Bug with reading Memo as WideMemo is fixed
  • Bug with field name quoting in a filter expression is fixed
  • Bug with handling parameter values of BLOB type in batch operations is fixed
  • Bug with memory leak in TVirtualDataSet is fixed
  • Bug with detection of field aliases for a query with the JOIN statement is fixed
  • Bug with memory leak when loading Memo fields in TMSLoader is fixed

7.3.16 21-Nov-16

  • Bug with adding Calculated fields after calling Prepare is fixed
  • Bug with WITH clause in TMSScript is fixed
  • Bug with inserting identity fields through TMSLoader in the Direct mode is fixed
  • Bug with updating a field containing a space in an alias in the Direct mode is fixed
  • Bug with setting FilterSQL to SQL query in Disconnected mode is fixed

7.3.15 01-Nov-16

  • The TMSConnectionOptions.MultipleConnections property is added
  • TMSDataSetOptions.UseSessionIdentity property is changed to TMSDataSetOptions.LastIdentityValueFunction property for selecting the function that returns last-generated identity values
  • Bug with raising 'Argument out of range' error on TCRDBGrid creating in RAD Studio Berlin with Update 1 is fixed
  • Bug with QueryRecCount when ORDER clause contains CASE..END is fixed
  • Bug with processing parameter name when a name begins from a number is fixed
  • Bug with processing varchar fields when AutoTranslate is True in the Direct mode is fixed
  • Bug with the assertion failure on processing UDT parameters in TMSStoredProc is fixed
  • Some bugs in TMSLoader in the Direct mode are fixed

7.3.14 08-Sep-16

  • TDADataSetOptions.InsertAllSetFields property is added
  • Support for IPv6 protocol in Direct Mode is added
  • The TMSServiceBroker component for non-Windows platforms is supported
  • Support for UDT fields in the TMSTableData component is added
  • Now the value of NULL output parameters is returned as NULL, not as Unassigned
  • Several bugs in SmartFetch Mode are fixed
  • Bug with setting the TCustomDADataSet.EOF property after fetch canceled is fixed
  • Bug with param values loss after changing TDAParam.ValueCount is fixed
  • Bug with PtrOffset function when Overflow Checking option enabled is fixed
  • Bug with the "DisposeBuf failed" error when canceling dataset changes is fixed
  • Bug with the duplicated MacroChar variable is fixed
  • Bug with RowsAffected calculation after executing the RefreshQuick method is fixed
  • Bug in the RefreshRecord method when database name must be quoted is fixed
  • Bug with assertion failure on processing UDT fields is fixed
  • Bug with AV failure on processing float fields for mobile platforms is fixed
  • Bug in TMSLoader in Direct Mode when TableName contains SchemaName is fixed
  • Bug in TMSLoader in Direct Mode when TableName is quoted is fixed
  • Bug with using a non-default port when Pooling is enabled is fixed

7.3.13 27-Jun-16

  • TVirtualDataSet component is added
  • TMSDataSetOptions.UseSessionIdentity property for the use of @@Identity lexem instead of SCOPE_IDENTITY() on refreshing data of inserted record is added
  • Data type mapping from Varbinary type to Blob field is added
  • Bug with assertion failure on editing data in SmartFetch mode is fixed
  • Bug with using parameters and column aliases in Master-Detail relation is fixed
  • Bug with AV on application closing when DLLs are used in the Trial edition is fixed
  • Bug with data type mapping from MONEY type to TBCDField field is fixed
  • Bug with assertion failure on assigning one TMSTableData object to a few parameters is fixed
  • Bug with using the UpdatingTable property without specifying the current schema in table name is fixed
  • Bug with resetting the TParam.ParamType property when Master-Detail relationship is used is fixed
  • Bug when the USE_FTAUTOINC directive is defined is fixed
  • Bug with duplicated query displaying in DBMonitor on calling the OpenNext method is fixed
  • Bug with showing the Debug window on using the TMSConnection.OpenDataSets method is fixed
  • Bug with calling the BeforeOpen and BeforeExecute events when using the TMSConnection.OpenDataSets method is fixed
  • Bug with processing identity fields in TMSLoader is fixed
  • Bug with AV failure on project compilation in Delphi 7 is fixed

7.3.12 28-Apr-16

  • Bug with AV failure when connection is not specified is fixed
  • Bug with batch operations is fixed

7.3.11 25-Apr-16

  • RAD Studio 10.1 Berlin is supported
  • Lazarus 1.6 and FPC 3.0.0 is supported
  • Support for the BETWEEN statement in TDADataSet.Filter is added
  • The TMSLoaderOptions.FireTrigger property is added
  • SmartFetch mode in Disconnected mode is supported
  • Bug with handling international characters in the VirtualTable component is fixed
  • Bug with displaying data in grid on error at applying cached updates is fixed
  • Bug in the SetOrderBy method in case when SQL contains ';' is fixed
  • Bug with using the LIKE clause in a dataset filter is fixed
  • Bug in TVirtualTable.Assign method on NULL values in Required fields is fixed
  • Bug with HTML entities replacing on XML data loading to TVirtualTable is fixed
  • Bug with setting the SkipUnsupportedFieldTypes option of TVirtualTable is fixed
  • Bug with AV failure on opening dataset inside DLL for MS SQL Server Compact Edition is fixed
  • Bug with generating of UpdateSQL on using WITH clause is fixed

7.2.10 01-Feb-16

  • Data Type Mapping performance is improved
  • Bug with fetching float values is fixed

7.2.9 14-Dec-15

  • Performance of TDALoader on loading data from TDataSet is improved
  • Several bugs in the SmartFetch mode are fixed
  • Bug with processing the cached data in the ApplyUpdates method is fixed
  • Bug with RecNo in the UniDirectional mode is fixed
  • Bug with storing some numbers with floating point is fixed
  • Bug with using TMSServiceBroker in Windows service is fixed
  • 'Range check error' on connection to SQL Server 2005 is fixed
  • Bug with AV failure on opening dataset when the OnFilterRecord event handler is used is fixed

7.2.8 18-Sep-15

  • Bug with showing values array for batch updates in SQLMonitor is fixed
  • Bug with editing Blob and Memo fields used in local filter is fixed

7.2.7 09-Sep-15

  • RAD Studio 10 Seattle is supported
  • Now Trial for Win64 is a fully functional Professional Edition
  • INSERT, UPDATE and DELETE batch operations are supported
  • Now at automatic refresh of Detail dataset the OnBeforeOpen event is not called
  • Generating conditions for filtration when using similar field names and aliases in TCRDBGrid is fixed
  • Bug with endless reconnection in assigned connection is fixed
  • Bug with editing Blob and Memo fields used in local filter is fixed
  • SQLMonitor behavior on using similar objects is fixed
  • Bug with truncation of milliseconds of datetime2 fields is fixed
  • Bug with AV failure on executing query with parameters of Word type is fixed
  • Bug with getting table names in Direct Mode is fixed
  • Bug with execution of stored procedures in Direct Mode is fixed
  • Bug with auto-detection of stored procedure parameters in TMSStoredProc in Direct Mode is fixed
  • Bug in Direct mode with the 'Token 02 below minimal' error when selecting an empty string value for the nvarchar(max) data type is fixed
  • Bug with setting the TMSCompactConnection.IsolationLevel property is fixed

7.1.6 14-Jul-15

  • Critical bug with data encryption is fixed
  • Bug in IProviderSupport.PSExecuteStatement with parsing a SQL query is fixed
  • Bug with missing IdeVer.inc in Trial version is fixed
  • Bug in TMSScript.Execute with script parsing is fixed
  • Bug with the stored procedures executing in the Direct mode is fixed
  • 'Catastrophic failure' on data fetching is fixed

7.1.5 30-Jun-15

  • Critical bug when parsing SQL query with parameters is fixed
  • Bug with the Refresh method in the SmartFetch mode is fixed
  • Bug with getting stored procedure list is fixed
  • Bug in TMSScript.Execute with script parsing is fixed

7.1.4 17-Jun-15

  • Now parameter type is set automatically if it is explicitly declared
  • Bug with using bookmarks in a filtered dataset is fixed
  • Bug with restoring the original order of records after clearing IndexFieldNames is fixed
  • Bug with refreshing DbLookupComboBox of the detail dataset when Master-Detail relationship is used is fixed
  • Bug with SQL Monitor freezing when using in a DLL is fixed
  • Bug with TMSQuery.RefreshRecord when the table name contains the database name or the schema name is fixed
  • Bug with unnecessary update of all fields when a server cursor is used is fixed
  • Bug with the 'Out of memory' error on opening a big table when ReadOnly = True is fixed
  • Bug in TMSScript with parsing script is fixed
  • Bug in TMSChangeNotification for SQL Server 2012 and higher is fixed
  • Bug in TMSConnection.OpenDatasets with setting macro values is fixed

7.1.3 14-Apr-15

  • RAD Studio XE8 is supported
  • AppMethod is supported
  • Direct mode in Lazarus is supported
  • Now the Direct mode is supplied as source code
  • Performance of connection establishing in the Direct mode is improved
  • Bug with invalid names of Master-Detail parameters is fixed
  • Bug with the 'Cannot convert type' error in the TDADataSet.RefreshRecord method when data type mapping is used is fixed
  • Bug with AV failure in the SmartFetch mode is fixed
  • Bug with AV on calling GetVersion() in C++Builder is fixed
  • Bug with the 'TableName cannot be empty' assertion failure on query opening is fixed
  • Bug with processing LongWord parameters is fixed
  • Bug with the 'DateTime type 40' error on query opening is fixed
  • Bug with an Abstract error on TMSChangeNotification freeing is fixed
  • Bug with AV failure in the TMSConnection.Ping method is fixed

7.0.2 14-Jan-15

  • Lazarus 1.2.6 is supported
  • Several bugs in the Direct mode are fixed
  • Bug with the "Input\Output error(5)" error on Connect for non-Windows platforms is fixed
  • Bug with losing data after VirtualTable closing on SaveToStream is fixed
  • Bug with RestoreUpdates in CachedUpdates mode is fixed
  • Bug with processing a query containing a 'UNION' clause is fixed
  • Bug with editing DateTime fields when string-to-datetime data type mapping is used is fixed
  • Bug with loading datetime2 fields via TMSLoader by OLEDB Provider is fixed

7.0.1 25-Nov-14

  • Direct mode is supported
  • Mac OS X is supported
  • iOS is supported
  • Android is supported
  • Bug when using table aliases in the DetailFields name is fixed
  • Bug with using UPPER and LOWER functions in filter is fixed
  • Bug with setting TParam.Value = for a parameter with the ftDate data type is fixed
  • Bug with TCustomDADataSet.FindKey is fixed
  • Bug with editing DateTime fields when data type mapping from string to DateTime is used is fixed
  • Bug with refreshing record if the key field has the TSQLTimeStamp data type is fixed
  • Bug with using view in SQL query in the SmartFetch mode is fixed
  • Bug with record editing in the SmartFetch mode when RefreshOptions.roBeforeEdit is set is fixed
  • Bug with processing TMSTransaction events by DBMonitor is fixed

6.11.23 29-Sep-14

  • Bug with RecNo in the UniDirectional mode is fixed
  • Bug with setting SQL query when ParamCheck = False is fixed
  • Bug with AV failure on getting metadata by TCustomDADataSet is fixed
  • Bug with AV failure under Mobile when DacFMX is used is fixed
  • Bug with incorrect data loading by TMSLoader is fixed

6.11.22 15-Sep-14

  • RAD Studio XE7 is supported
  • Lazarus 1.2.4 is supported
  • The TCustomDADataSet.GetKeyFieldNames method is added
  • The TCustomDAConnection.GetKeyFieldNames method is added
  • The ConstraintColumns metadata kind for the TMSMetadata component is added
  • Demo projects for FastReport 5 are added
  • Several bugs in the SmartFetch mode are fixed
  • Bug with quoting names in the EmptyTable method is fixed
  • Bug with calling the Refresh method after executing the EmptyTable method is fixed
  • Bug with setting calculated field values using the AsExtened property is fixed
  • Bug with re-calling the AfterExecute event is fixed
  • Bug with re-calling the BeforeExecute event is fixed
  • Bug with detecting hidden fields is fixed

6.10.21 31-Jul-14

  • The SQL property is added to TMSConnection
  • Support for the Upper and Lower statements in TDADataSet.Filter is added
  • Bug with reopening TDADataSet after BreakExec is fixed
  • Several bugs in the SmartFetch mode are fixed
  • Bug with processing calculated and lookup fields in the SmartFetch mode is fixed
  • Bug with getting RecordCount when QueryRecordCount is True is fixed
  • Bug with AV failure on opening TCustomDADataSet when Range was set is fixed
  • Bug with "Invalid field size" in TVirtualTable is fixed
  • Bug with AV failure on freeing objects on mobile platforms is fixed
  • Bug with opening a query with too long columns is fixed
  • Bug with cutting an input-output parameter value is fixed
  • Bug with processing identity field is fixed
  • Bug with processing tinyint fields is fixed
  • Bug with processing tinyint and bigint parameters in SQL Server Compact Edition is fixed
  • Bug with the Integer Overflow error on query preparation when DescribeParams is True is fixed
  • Bug with getting metadata in MS SQL Server 64 bit is fixed
  • Bug with 'Unspecified error' in TMSLoader is fixed

6.10.20 27-May-14

  • Bug with AV failure on fetching records in the UniDirectional mode is fixed
  • Bug with finding master parameters by original name on refreshing record when using master/detail relationship by parameters is fixed
  • Bug with compilation in C++Builder is fixed
  • Bug with setting boolean parameters in a non-English IDE at design-time is fixed
  • Bug with unnecessary updating all fields when server cursor used is fixed
  • Bug with detecting slash as a delimiter in TMSScript is fixed
  • Bug with AV failure on appending new records when server cursor is used and CursorUpdate = False is fixed
  • Bug with hanging application on closing dataset with non-fetched records is fixed
  • Bug with excess memory allotment on recordset opening is fixed

6.10.19 29-Apr-14

  • RAD Studio XE6 is supported
  • Lazarus 1.2.2 and FPC 2.6.4 is supported
  • SQL Server 2014 is supported
  • SmartFetch mode for TDataSet descendants is added
  • The TMSDataSetOptions.MasterFieldsNullable property is added
  • Now update queries inside TDataSet descendants have correct owner
  • The SetOrderBy method behavior is fixed
  • The GetOrderBy method behavior is fixed
  • Bug with displaying already installed DAC version in setup messages is fixed
  • Bug with the Filter behavior in the Metadata component is fixed
  • Bug with AV on modify table with one only Object field is fixed
  • Bug with Locate when a NULL value is present in the index field is fixed
  • Bug with IndexFieldNames when DataTypeMapping is enabled is fixed
  • Bug with freeing memory in the TDADataSet.Lookup method is fixed
  • Bug with processing widestring parameters is fixed
  • Bug with generating SQL queries for a query with a few keys is fixed
  • Bug with processing tinyint and single parameters in SQL Server Compact Edition is fixed
  • Bug with setting the TField.Required property for SQL Server Compact Edition is fixed

6.9.18 19-Feb-14

  • Possibility to use MAS_ prefix for parameters when using master/detail relationship is added
  • Bug with post data when LockMode=lmOptimistic and Data Type Mapping is applied is fixed
  • Bug with opening dataset when persistent fields were created in dataset is fixed
  • Bug with parameter name quoting on assigning field value to parameter is fixed
  • Bug with deleting a record inserted earlier in CachedUpdates mode is fixed
  • Bug on sorting BLOB fields is fixed
  • Bug with percentage count in the OnRestoreProgress event of the TDADump class is fixed
  • Bug with changing TParam.ParamType when preparing parameters of stored procedure when DescribeParams is True is fixed
  • Bug with deleting other services on closing TMSChangeNotification is fixed
  • Bug with not displaying data in visual controls in the NonBlocking mode is fixed
  • Bug with generating SQL queries by "SQL Generator" in design-time is fixed
  • Bug with "SQL editor" in design-time is fixed

6.9.17 25-Dec-13

  • RAD Studio XE5 Update 2 is now required
  • Now .obj and .o files are supplied for C++Builder
  • Compatibility of migrating floating-point fields from other components is improved
  • The TMSConnection.AutoCommit property is added
  • Default values of UNIQUEIDENTIFIER fields without curly brackets are supported
  • RefreshQuick, RefreshRecord and ReadOnly are now set to True by default
  • Bug with data loss when updating records in the CachedUpdates mode is fixed
  • Bug with RefreshRecord in the CachedUpdates mode is fixed
  • Bug with mapping to BCD and FmtBCD types is fixed
  • Bug with mapping single types to float types is fixed
  • Bug with data display in Detail Dataset when master field is Null is fixed
  • Bug with mapping to BCD fields when using TClientDataSet is fixed
  • Bug with incorrect parameter sizes when re-opening a query is fixed
  • Bug with filtering boolean fields is fixed
  • Bug with freeing complex fields after refreshing before editing is fixed
  • Bug with Locate by fields where Data Type Mapping is applied is fixed
  • Bug with RefreshQuick when IndexFieldNames is set is fixed
  • Bug with incorrect committing of data by the Loader component on errors is fixed
  • Bug with using LongWord parameters is fixed
  • Bug with using TMSDataSetOptions.NonBlocking is fixed
  • Bug with processing varbinary(max) output parameters in stored procedure is fixed
  • Bug with the "Bookmark is invalid" error when using the ctKeyset cursor is fixed

6.8.16 23-Sep-13

  • Critical bug with parsing unicode SQL queries is fixed

6.8.15 18-Sep-13

  • RAD Studio XE5 is supported
  • Lazarus 1.0.12 is supported
  • Performance is improved
  • Automatic checking for new versions is added
  • Flexible management of conditions in the WHERE clause is added
  • Support of the IN keyword in the TDataSet.Filter property is added
  • Like operator behaviour when used in the Filter property is now similar to TClientDataSet
  • The possibility to use ranges is added
  • The Ping method for the TMSConnection component is added
  • The AllowImplicitConnect option for the TMSConnection component is added
  • The ForceCreateDatabase option for the TMSConnection is added
  • The ApplicationIntent option for the TMSConnection is added
  • The SQLRecCount property for the TMSQuery and TMSStoredProc components is added
  • The ScanParams property for the TMSScript component is added
  • The RowsAffected property for the TMSScript component is added
  • Bug in TDALoader with data loading from Dataset when the FetchAll option is set to False is fixed
  • Bug with TDALoader.LoadFromDataSet is fixed
  • Bug with storing the dbMonitor active state to DFM is fixed
  • Bug with setting ConnectionTimeout for Unix, Mac OS and iOS platforms is fixed
  • Bug with incorrect displaying of long names of parameters and macros in design-time is fixed
  • Bug with processing cached data when UpdateRecordTypes is not default is fixed
  • Bug with moving data from WideMemo to String fields by TCRBatchMove is fixed
  • Bug in TCRBatchMove when destination dataset has no key fields is fixed
  • Bug with TCRBatchMove and DataSets in the UniDirectional mode is fixed
  • Bug with showing a connection dialog in design-time when LoginPrompt is set to False is fixed
  • Bug with setting the connection string containing inline comments is fixed
  • Bug with unnecessary unlock calling after an update error is fixed
  • Bug with not setting all properties when assigning TMSSQL is fixed
  • Bug with using ptResult parameters is fixed
  • Bug with calling RefreshRecord when FullRefresh is set to True is fixed
  • Bug with assertion failure when using notifications is fixed
  • Bug with using notifications for long queries is fixed
  • Bug causing different errors when using notifications is fixed
  • Bug with "Multiple-Step OLE DB Operation generated errors" is fixed
  • Bug with processing DateTime fields when using Table-Valued Parameter type is fixed

6.7.14 15-Jul-13

  • Connection dialog is improved
  • Incorrect XE4 behaviour when re-opening a dataset under iOS is fixed
  • Now schema name is used when filling default values if DefaultValues = True
  • Bug in the alerter when DisconnectedMode is set to True for a connection is fixed
  • Bug with the connection OnLogin event is fixed
  • Bug with incorrect counting of connections in pool is fixed
  • Bug with time fields in Lazarus is fixed
  • Bug with varbinary fields in Lazarus is fixed
  • Bug with using case-insensitive filter is fixed
  • Bug with getting and setting the SQL property of FastReport datasets is fixed
  • Bug with positioning of Fields Editor is fixed
  • Bug with not using index fields on locating records is fixed
  • Bug with processing the cached data when UpdateRecordTypes is not default is fixed
  • Bug with processing persistent fields in TVirtualTable is fixed
  • Bug with processing parameters of stored procedures is fixed
  • Bug with the QueryRecCount option queries containing the 'GROUP BY' clause is fixed
  • Bug with processing changed Blob fields is fixed
  • Bug with "Multiple-Step OLE DB Operation generated errors" is fixed
  • Bug with truncating strings containing #0 characters is fixed
  • Bug with the 'Invalid floating point operation' error on dataset opening is fixed
  • Bug with memory leak when using connection pooling is fixed
  • Bug with adding #0 characters when dumping blob fields is fixed

6.7.13 25-Apr-13

  • Rad Studio XE4 is supported
  • Connection string support is added
  • Now the TCustomMSDataSet.Options.UniqueRecords property is set to True by default
  • The TCustomMSDataSet.Options.HideSystemUniqueFields property is added
  • Possibility to encrypt entire tables and datasets is added
  • Possibility to determine if data in a field is encrypted is added
  • Support of TimeStamp, Single and Extended fields in VirtualTable is added
  • Bug with Master-Detail for TClientDataSet in Rad Studio XE3 is fixed
  • Bug with Master-Detail by non-English fields is fixed
  • Bug with IndexFieldNames by non-English fields is fixed
  • Bug with incorrect RecordCount result when a query contains both ORDER BY and LIMIT is fixed
  • Bug with calling Cancel in the BeforePost event is fixed
  • Bug when setting the TDataSet.Filter property for empty dataset is fixed
  • Bug with incorrect TVirtualTable version displaying in the About box is fixed
  • Thread handle leak when using pooling is fixed
  • Bug with 'Unspecified error' when using TMSLoader for UNIQUEIDENTIFIER fields is fixed
  • Bug with TMSLoader.LoadFromDataSet when UniDirectional = True and FetchRows = 1 is fixed
  • Bug when opening table for SQL Server Compact Edition 4.0 for 64-bit Windows is fixed
  • Now the TCustomDASQLMonitor.Options.moDBMonitor property is set to False by default

6.6.12 14-Feb-13

  • Rad Studio XE3 Update 2 is now required
  • Bug with AV on adding TFieldDef items to FieldDefs for Delphi 2009 and higher is fixed
  • Bug with incorrect detection of the numeric parameter type in ExecSQL is fixed
  • Bug with assigning data to blob fields when using Data Type Mapping is fixed
  • Bug with inserting a new record into TStringGrid in FMX is fixed
  • Bug with unlocking a record after constraint violation is fixed
  • Bug with quoting index field names in TCRDBGrid is fixed
  • Bug with Master-Detail link by fields with non-English names is fixed
  • Bug with saving Date fields in XML is fixed
  • Bug with data type mapping of nvarchar(max) field is fixed
  • Bug with the 'List index out of bounds' error on refresh of detail table is fixed
  • Bug with AV failure on repeated execution of a prepared stored procedure is fixed
  • Bug with AV failure on filling default field values is fixed
  • Bug with using the TVP parameter not belonging to dbo schema is fixed
  • Bug with dumping data from view is fixed
  • Bug with dumping data from tables of not a standard dbo schema is fixed
  • 'Overflow check error' when using TMSDump is fixed
  • Bug with 'Unspecified error' in TMSLoader is fixed
  • 'Invalid column name 'message_id'' when using notifications in SQL Server 2012 is fixed

6.6.11 12-Dec-12

  • Rad Studio XE3 Update 1 is now required
  • C++Builder 64-bit for Windows is supported
  • TMSConnection.Port property that allows specifying the port number for connection is added
  • Bug with using quoted field names in the IndexFieldNames property is fixed
  • Bug in TMSStoredProc with closing dataset when the Disconnected property is True is fixed
  • Bug with processing macros named in Cyrillic is fixed
  • Bug with getting default field values when using not the default dbo schema is fixed
  • Bug with getting default values for fields with aliases is fixed
  • Bug with filtering XML fields is fixed
  • 'Required provider is not installed' error when working with FILESTREAM data is fixed

6.5.10 07-Nov-12

  • Some improvements for NEXTGEN support are added
  • Support for ftGraphic and ftFmtMemo parameter data types is added
  • Informativity of messages about errors in connection is improved
  • Dependency of design-time packages on FMX packages is removed
  • TMSConnectionOptions.NativeClientVersion property to set the version of SQL Native Client provider is added
  • The possibility of choosing the Authentication mode in TfrxSDACDatabase is added
  • Bug with data loss in pessimistic lock mode is fixed
  • Bug with AV failure in RefreshQuick method is fixed
  • Bug with renaming of fields with the same names is fixed
  • Bug with dependency parameters count in macros on delimeter is fixed
  • Bug with storing the LoginPrompt connection property is fixed
  • Bug with dump data from VIEW is fixed
  • Bug with creating columns on setting the TableName property in TDALoader is fixed
  • Bug with using TVP parameters in queries is fixed
  • Bug with AV failure on TMSTable.Open is fixed
  • Bug with using the '|' symbol in the connection string is fixed
  • Bug with using the NEWSEQUENTIALID() default expression is fixed
  • Bug with inserting float values to real fields is fixed
  • 'Range check error' when working with varbinary(max) or varchar(max) is fixed
  • Bug with errors on starting BDS 2006 is fixed
  • Bug with compilation of FireMonkey Application on C++Builder is fixed
  • Bug with invalid class type cast exception when processing parameters in Trial Edition is fixed

6.5.9 05-Sep-12

  • Rad Studio XE3 is supported
  • Windows 8 is supported
  • Bug with storing empty MapRules collection in DFM is fixed
  • Bug with AV failure at freeing connection, for which AssignConnect was executed, is fixed
  • Bug with inserting strings and widestrings via TMSLoader is fixed

6.2.8 24-Jul-12

  • Bug with Data Type Mapping and persistent fields is fixed
  • Bug with Data Type Mapping to Bytes and VarBytes is fixed
  • Bug with decryption of binary fields is fixed
  • Bug with editing calculated fields is fixed
  • Connection dialog is now open in the screen center instead of the desktop center
  • Several bugs with compilation on Delphi XE2 from Source code are fixed

6.2.7 21-Jun-12

  • Update 4 Hotfix 1 for RAD Studio XE2, Delphi XE2, and C++Builder XE2 is now required
  • Data Type Mapping support is added
  • Data encryption in a client application is added
  • The TMSEncryptor component for data encryption is added
  • SQL Server Native Client 11 (SQL Server 2012) support in the TMSConnection.ConnectString property (Provider=SQLNCLI11.1) is added
  • Calling of the TCustomDASQL.BeforeExecute event is added
  • Bug with executing a script that ends with a commented line is fixed
  • Bug with assigning outsize data to TWideStringField is fixed
  • Bug with AV failure at calling the SetRecNo method when using local sorting is fixed
  • Bug in design time editor of the TVirtualTable component with master-detail relationship is fixed
  • Bug with getting stored procedures list for SQL Server 2000 is fixed
  • Bug in design time editor of the TMSStoredProc component is fixed

6.1.6 02-Apr-12

  • Bug with SQL Generator in the design-time is fixed
  • Bug with generating Update SQL with fields that have aliases is fixed
  • Bug with saving BCD fields from TVirtualTable to a Stream is fixed
  • Bug with LocalMasterDetail is fixed
  • Bug with pdInputOutput parameters is fixed

6.1.5 01-Mar-12

  • Update 4 for RAD Studio XE2, Delphi XE2, and C++Builder XE2 is now required
  • Bug with AV failure at executing ApplyUpdates is fixed
  • Bug with hanging RAD Studio XE2 when opening ConnectDialog is fixed
  • Several bugs in design-time editors are fixed
  • Bug with the query that is generated for the QueryRecCount option is fixed
  • Bug with processing TMSCompactConnectionOptions.LocaleIdentifier is fixed
  • Bug with processing data for SQL Server Compact Edition when using the BaseTable cursor is fixed

6.1.4 28-Dec-11

  • The UniqueFieldIndexSeparator global variable is added
  • Bug with assertion failure at proccesing the cached data is fixed
  • Bug with Delphi IDE hanging at closing in case of using DBMonitor is fixed
  • Bug with freeing memory in Lazarus is fixed
  • Bug with executing the queries with parameters in Delphi 5 is fixed
  • Several bugs with 64-bit application development are fixed
  • Several bugs in design-time editors are fixed
  • Bug with generation the SQL query for data refresh, while FullRefresh is True and the macros is used, is fixed
  • Bug with the stored procedures executing in SQL Azure is fixed
  • Bug with GetProcedureList is fixed

6.1.3 23-Nov-11

  • Update 2 for RAD Studio XE2, Delphi XE2, and C++Builder XE2 is now required
  • FireMonkey support is improved
  • Lazarus 0.9.30.2 and FPC 2.4.4 are supported
  • SQL Azure support is improved
  • Bug with query containing 'WITH' clause that is generated for the QueryRecCount option is fixed
  • Bug with processing parameters values of which are set to the SqlTimestamp type is fixed
  • Bug with memory leak in TDALoader is fixed
  • Problem with receiving DateTime parameter for DBMonitor in Delphi 2009 and higher is fixed

6.0.2 10-Oct-11

  • Bug with processing identity fields in Table-valued parameters is fixed

6.0.1 15-Sep-11

  • Embarcadero RAD Studio XE2 is supported
  • Application development for 64-bit Windows is supported
  • FireMonkey application development platform is supported
  • Support of master/detail relationship for TVirtualTable is added
  • OnProgress event in TVirtualTable is added
  • TDADataSetOptions.SetEmptyStrToNull property that allows inserting NULL value instead of empty string is added
  • Bug with excess memory allotment on recordset opening for SQL Server Compact Edition is fixed

5.10.0.8 19-Jul-11

  • Bug with assertion failure on using master/detail relationship with TClientDataset is fixed
  • Bug in TCustomDADataSet.PSGetKeyFields method when in dataset persistent fields was created is fixed
  • Bug with crashing application when preparing parameters for SQL Server Compact Edition is fixed

5.10.0.7 15-Jun-11

  • Possibility to load data in TVirtualTable without recreating persistent fields is added
  • Working in design time editor of the TVirtualTable component is improved
  • Loading files opened by other applications is improved
  • Bug with processing key fields on record posting is fixed
  • Several bugs with design-time editors for Lazarus are fixed
  • Bug with specifying schema name on getting table names list in design time editor when not default schema name is used is fixed

5.10.0.6 28-Apr-11

  • Lazarus 0.9.30 and FPC 2.4.2 is supported
  • Support for Table-Valued Parameters is added
  • TMSTableData component for storing data of Table-Valued Parameter type is added
  • Support of API interface for managing FILESTREAM data is added
  • Support for SQL Server Compact Edition 4.0 is added
  • Bug in bookmark validity check is fixed
  • Bug with processing varchar(max) output parameters in stored procedure is fixed
  • Bug with using empty string in the Filter property is fixed

5.00.0.5 10-Mar-11

  • Delphi & C++Builder XE Starter Edition supported
  • Fixed registration procedure of Borland SQL Monitor when TMSSQLMonitor is created at runtime
  • Fixed bug with using the TrustServerCertificate value in connection pool

5.00.0.4 26-Jan-11

  • Fixed bug with SQL Generator in design time

5.00.0.3 08-Dec-10

  • Added calling the BeforeExecute event for the Open and Refresh dataset operations
  • Fixed bug in the Refresh method when connection is lost
  • Fixed bug with refreshing record for Master-Detail datasets
  • Fixed bug with processing varchar(max) parameters in stored procedure
  • Fixed bug with AV failure when non-string value is set to string parameter
  • Fixed bug with setting parameter values when ParamStringAsAnsiString is set to True

5.00.0.2 04-Nov-10

  • Added checking that dataset is open on calling the TDataSet.Locate method
  • Improved performance of working with UDT fields
  • Fixed bug with decoding data on loading XML
  • Fixed bug in Migration Wizard with adding unnecessary spaces
  • Fixed bug with processing large GEOMETRY and GEOGRAPHY fields
  • Fixed bug with processing time parameters for SQL Server 2005
  • Fixed bug in the Migration wizard with migrating parameters in the date format
  • Fixed bug with processing parameters when query is executed with error

5.00.0.1 13-Sep-10

  • Embarcadero RAD Studio XE suppored
  • Fixed bug with the LIKE keyword in the TDataSet.Filter property
  • Fixed bug with filling default expression for fields in the design mode for inactive dataset
  • Fixed bug with processing large Geometry fields
  • Fixed bug with inserting autoincrement fields through TMSLoader

4.80.0.60 13-Aug-10

  • Changed the LocateEx method behavior: now LocateEx centers records equal to Locate
  • Added the OnBeforeExecute event
  • Fixed bug in Migration Wizard with converting units in the UTF8 and UTF16 encoding
  • Fixed bug with RefreshRecord and numbers with floating point
  • Fixed bug with truncation of large Geometry field

4.80.0.59 24-Jun-10

  • Added ability to lock records in the CachedUpdate mode
  • Added the UniqueFieldNamePrefix variable to specify prefix to create unique field names when used server cursor
  • Added overloaded declaration of the ApplyUpdates method to choose update kind
  • Fixed bug with quote that first character inside quoted string for the Filter property
  • Fixed bug in TCRBatchMove with processing RecordCount
  • Fixed bug with LockTable
  • Fixed bug with changing IndexFieldNames if AutoPrepare = True

4.80.0.58 26-May-10

  • Added support of GEOMETRY, GEOGRAPHY, HIERARCHYID field types for SQL Server 2008
  • Added DescribeParams option that provides automatic parameters describing when a statement is prepared
  • Fixed bug with cascade deleting records for SQL Server Compact Edition
  • Fixed bug with generating system field names when static cursor is used
  • Fixed problem with static cursor usage in transactions
  • Fixed problem with inserting empty value in blob field

4.80.0.57 09-Apr-10

  • Fixed bug with comparing Date field values on optimistic locking
  • Fixed bug in the AddWhere, DeleteWhere, SetOrderBy, and GetOrderBy methods for Tables
  • Fixed bug with calculating RecNo in CachedUpdates mode
  • Fixed bug with AV failure on connection closing under CLR
  • User_name in metadata changed to schema_name

4.80.0.56 04-Mar-10

  • Added ability to send call stack information to dbMonitor component
  • Fixed bug with refreshing record when using master/detail relationship
  • Fixed bug with LocalUpdate in the CachedUpdates mode
  • Fixed bug with DBMonitor for C++ Builder 6
  • Fixed bug with processing DECIMAL fields when EnableBCD = False
  • Fixed bug with the TMSSQL.NonBlocking property, that was set in design time

4.80.0.55 26-Jan-10

  • Added OnStart, OnCommit, OnRollback events to TDATransaction
  • Fixed bug with refreshing record when RefreshOptions.roBeforeEdit is set and LockMode = lmPessimistic
  • Fixed problem with using TLargeintField in master/detail
  • Fixed bug with processing transaction when connection is lost
  • Fixed bug with processing TIME fields for SQL Server 2008
  • Fixed bug with processing Widememo fields for SQL Server Compact Edition
  • Fixed bug with sending messages to different databases via TMSServiceBroker
  • Fixed bug with TMSDump

4.80.0.54 01-Dec-09

  • Added support for dbMonitor 3
  • Added support of DATETIMEOFFSET field type for SQL Server 2008
  • Fixed bug with updating table, that has field name, representing a valid hexadecimal number
  • Fixed bug with updating field value with preceding spaces when TrimFixedChar or TrimVarChar = True
  • Fixed bug with executing large file in UTF-8 format
  • Fixed bug with repeated executing TMSConnection.OpenDatasets
  • Fixed bug with processing LargeInt parameters in Delphi 5

4.80.0.53 12-Nov-09

  • Added the TMSConnection.OpenDatasets method for opening several datasets as one batch
  • Now Required flag is set for UpdatingTable fields only
  • Now setting the SetFieldsReadOnly option to False makes all fields not read-only (default changed to True)
  • Fixed bug with detecting parameter size for MBCS strings
  • Fixed problem with detecting slash with text after it as a delimiter in TDAScript
  • Fixed bug with SetOrderBy and SetWhere when there is no space before ORDER or WHERE
  • Fixed bug with executing large file in Unicode format
  • Fixed bug with setting right datatype for nvarchar parameter
  • Fixed bug with getting all error messages, when multiple errors are generated

4.80.0.52 13-Oct-09

  • Added support of Base table cursor for SQL Server Compact Edition
  • Now the AssignConnect method copies transaction state
  • Now TFMTBcdField fields are trimmed if they are larger than MaxFMTBcdDigits
  • Fixed problem with help registration under RAD Studio 2010
  • Fixed problem with loading DataSet Manager under RAD Studio 2010
  • Fixed bug with locating records using the LocateEx method and the lxNearest option
  • Fixed bug with SQL Generator in design-time
  • Fixed bug with AV failure in MemData
  • Fixed bug with calculating count of using the sqlncli library
  • Fixed bug with FieldTypesWithSize ambiguity under C++Builder

4.80.0.51 10-Sep-09

  • Embarcadero RAD Studio 2010 suppored
  • Added the TCustomMSDataSet.HasNextResultSet method to check if the next recordset is available
  • Now the subdetail is refreshed before the AfterRefresh event of the detail is called
  • Fixed bug with processing DateTime fields on table locking

4.70.0.50 01-Sep-09

  • Added the TMSDataSetOptions.DisableMultipleResults property allowing to forbid using multiple results for quickly closing dataset
  • Now the value from the master dataset has priority over the DefaultExpression value
  • Fixed bug with parsing TDAScript.Statements
  • Fixed bug with RefreshQuick for query with fields that have similar names in several tables
  • Fixed bug with not unlocking record in the CachedUpdates mode if no fields were changed
  • Fixed bug with GetServerList on getting local SQL Server name
  • Fixed bug with inserting record when Pooling is enabled
  • Fixed bug with calculating count of using the sqlncli library
  • Fixed bug with correct settings of parameters for TMSCompactConnection
  • Fixed bug with checking DB file version of SQL Server Compact Edition in multi thread application

4.70.0.48 24-Jun-09

  • Added the TMSDump.Options.DisableConstraints property to dump multiple tables with foreign keys
  • Fixed bug with local sorting in CachedUpdates mode
  • Fixed bug with raising exceptions on locating records when IndexFieldNames is set
  • Fixed bug with calculating connection count in Disconnected mode
  • Fixed bug with calling the OnError event on connection failure when Pooling is enabled
  • Fixed bug with macros in TDAScript
  • Fixed bug with getting field aliases for SQL Server Compact Edition
  • Corrected packets for N++ Builder 6

4.70.0.47 27-May-09

  • Added the Disconnected property to TCustomDADataSet
  • Added support for TQuery.DataSource property in BDE Migration Wizard
  • Added distinction between empty string and null value when saving/loading string fields in TVirtualTable
  • Improved work of SQL instance detection
  • Fixed bug with the GotoCurrent method
  • Fixed bug with LocalMasterDetail and Prepare method
  • Fixed bug with FullRefresh and macros
  • Fixed bug with processing NTEXT fields when using TDataSetProvider for Delphi 2009
  • Fixed bug with processing Unicode symbols in TMSXMLField
  • Fixed bug with calculating connection count on fetch
  • Fixed bug with generating SQL queries by "Sql Generator" of TMSQuery component in design-time when Options.QuoteNames is set to True

4.70.0.46 02-Apr-09

  • Added NoPreconnect property to TMSScript for executing CONNECT and CREATE DATABASE commands
  • Fixed bug with DetailDelay and refreshing closed dataset
  • Fixed bug with not calling UnregisterClient for internal command of dataset
  • Fixed bug with refreshing record when RefreshOptions.roBeforeEdit is set and LockMode = lmImmediate
  • Fixed bug with detecting DBMonitor on 64-bit Windows
  • Fixed bug with stored procedures the names of which contain dot character
  • Fixed bug with executing ApplyUpdates when LockMode = lmOptimistic in the CachedUpdates mode

4.70.0.45 26-Feb-09

  • Added ability to backup user defined query to file or stream in TMSDump
  • Fixed bug with not working CachedUpdates in TVirtualTable
  • Fixed bug with suppressing errors in TVirtualTable.LoadFromFile
  • Fixed problem with restoring current row after refresh
  • Fixed bug when statements, executed on TClientDataSet.ApplyUpdates, were not shown in DBMonitor
  • Fixed access violation on the TClientDataSet.ApplyUpdates call
  • Fixed bug for Delphi 2009 with editing varchar fields which contain Unicode symbols
  • Fixed bug with DMLRefresh when the Params count is more than zero
  • Fixed bug with loading BLOB values through TMSLoader.LoadFromDataSet
  • Fixed bug in TCustomDADataSet.PSGetKeyFields
  • Bug in Delphi 2006 and above with the BcdCompare function avoided

4.70.0.44 05-Jan-09

  • Fixed bug with treating some string elements as equal by CompareString

4.70.0.43 09-Dec-08

  • Fixed bug for Delphi2009 with updating varchar fields which contain Unicode symbols
  • Fixed bug with processing date/time fields in prepared stored procedures for SQL Server 2008

4.70.0.42 19-Nov-08

  • Added support of DATE and TIME field types for SQL Server 2008
  • Added support of SQL Server NativeClient 2008 in the TMSConnection.ConnectString property (Provider=SQLNCLI10.1)
  • Added the otConstraintColumnUsage option in the TMSObjectType enum of the TMSMetadata.ObjectType property
  • Added calling the TfrxReport.OnBeforeConnect event when TfrxDACDatabase is connecting
  • Fixed bug with AV failure when RetryMode is set to rmReconnectExecute in the OnConnectionLost event handler
  • Fixed bug with field names containing '.'
  • Fixed bug with name compatibility with ReportBuilder
  • Fixed bug with assertion failure on editing components in design time for Delphi 5
  • Fixed bug in Migration Wizard with converting binary forms in Delphi 2009
  • Fixed several bugs in DataSet Manager
  • Fixed bug with Fatal Error LA30 raising

4.70.0.41 23-Oct-08

  • Delphi 2009 and C++Builder 2009 supported
  • Extended Unicode support for Delphi 2007 added (special Unicode build)
  • Free Pascal 2.2 supported
  • Powerful design-time editors implemented in Lazarus
  • Completed with more comprehensive structured Help

4.50.0.39 22-Sep-08

  • Improved working with master/detail relationship when LocalMasterDetail=True
  • Optimized working the TOLEDBConnection.AssignFieldDescs method
  • Fixed bug with AV on getting OldValue for BLOB fields
  • Fixed bug with processing parameter of XML type of StoredProcedure

4.50.0.37 21-Aug-08

  • Added support of MS SQL Server 2008 Native Client
  • Fixed bug with stored procedures, whose result set depends on parameter values

4.50.0.36 11-Jul-08

  • Added ability to recognize unquoted True/False values in DefaultExpression
  • Added support of NOT LIKE keyword in the TDataSet.Filter property
  • Improved working with master/detail on inserting new records
  • An event to handle exceptions on restoring added in TMSDump
  • Improved generating scripts in TMSDump with the IdentityInsert option set to True
  • Fixed several bugs when working with inactive datasets
  • Fixed bug with filtering by TLargeIntField
  • Bug with autocommit after deleting records fixed
  • Fixing bug with calling the OnError event when LocalFailover is set to True
  • Fixed bug with BlobType in TMSXMLField
  • Fixed bug with posting some kinds of memo fields
  • Fixed bug with executing SELECT queries for functions
  • Fixed bug with loading empty BLOB values through TMSLoader
  • Fixed bug with setting the AutoGenerateValue property of fields in TMSTable
  • Fixed bug with multiple connections to databases of SQL Server Compact Edition 3.1
  • Fixed bug with opening queries when the SQL property is not assigned
  • Added ability to call Code Editor from component editors

4.50.0.35 11-Jun-08

  • Fixed bug with multiple order fields in TMSTable
  • Bug with generating update SQL with IS NULL in the WHERE clause at design-time fixed
  • Fixed bug with the SetOrderBy method
  • Fixed bug with determining primary key fields
  • Fixed bug with AV failure on assigning the OnFilterRecord event handler
  • Fixed bug with KeepDesignConnected = False and TMSTable opened in design time
  • Fixed bug with handling NCHAR fields in TMSSQLMonitor
  • Fixed bug with breaking fetch in NonBlocking mode
  • Fixed bug with installation on computers without .NET Framework

4.50.0.34 23-May-08

  • Added compatibility with UniDAC
  • Improved support of default field values
  • Added ability to specify key fields for a dataset
  • Added support of automatic records locking
  • Added an option for setting lock wait timeout
  • Improved functionality of getting local SQL Server instance names
  • Added ability to manage field types creation for the NTEXT data type in BDS 2006 and higher
  • Fixed bug with change notifications for queries with macros
  • Fixed bug with invalid class type cast in SDAC Trial Edition
  • Fixed bug with multiple connections to SQL Server Compact Edition
  • Fixed bug with compressing BLOB values

4.35.1.16 04-Apr-08

  • Added ability to determine version of SQL Server Compact Edition database file on connect
  • Improved processing of default values
  • Fixed bug with executing scripts from files larger than 2GB
  • Fixed bug with locating records using the LocateEx method and the lxNext option
  • Access violation on local sorting fixed
  • Fixed bug with calling the OpenNext method in FetchAll=False mode
  • Fixed access violation on RefreshQuick of detail dataset when the master dataset is closed
  • Fixed bug with storing some settings of TMSConection.ConnectionString
  • Fixed bug with change notifications for queries with parameters
  • Fixed bug with truncation BLOB values loaded by TMSLoader
  • Removed the "Wrong MDAC version." exception

4.35.1.15 18-Feb-08

  • Enhanced local sorting with new options (DefaultSortType option, BIN sort type in IndexFieldNames)
  • Added support for SQLInsert, SQLUpdate, SQLDelete properties for updating with TDataSetProvider
  • Improved bookmarks comparison
  • Fixed bug with corrupting BLOB fields on CancelUpdates method call
  • Fixed bug with accessing persistent BLOB fields in closed dataset
  • Fixed bug with assigning string values with length that exceeds TMSParam.Size to parameter
  • Fixed bug with determining default expressions for BIT fields defined as constants in SQL Server 2005
  • Fixed bug in TMSTransaction with handling errors when starting transactions for multiple connections
  • Fixed bug with header files for C++Builder 2006 and C++Builder 2007

4.35.0.14 09-Jan-08

  • SQL Server Compact Edition 3.5 supported
  • Tested with SQL Server 2008 CTP 4
  • Added support for output XML parameters
  • Added ability to obtain extended error information for SQL Server Compact Edition
  • Added ability to link TMSCompactConnection to TMSScript
  • Fixed bug in master/detail for shifting columns count in the detail dataset
  • Fixed several bugs with records location
  • Fixed bug with TCRBatchMove whose source dataset does not reflect actual record count in the RecordCount property
  • Fixed some bugs with TMSXMLField
  • Fixed bug with setting TCustomMSConnection.ConnectString property
  • Fixed bug with field names and SQL Server Compact Edition under Windows Vista
  • Fixed bug with recognizing primary key fields for SQL Server Compact Edition
  • Fixed bug with setting the Bound property for parameters
  • Fixed bug with locking records in detail datasets
  • Fixed bug with DMLRefresh on BLOB fields

4.30.0.13 14-Nov-07

  • Added support for TVariantField in VirtualTable
  • Added ability to upgrade SDAC without uninstallation of previous SDAC builds
  • Now an exception is raised when uaFail is assigned to UpdateAction in OnUpdateRecord event handler
  • Optimized system resources usage for AutoRefresh
  • Fixed bug with automatic quotation of field names containing spaces
  • Fixed bug with the QuoteNames option in TMSTable
  • Fixed bug with parameter data type after assigning its value using the AsWideString property
  • Fixed bug with delayed disconnection under CLR
  • Fixed bug when working with prepared stored procedures under CLR
  • Fixed bug with Local Failover and the prSQL provider
  • Fixed bug with using SDAC in DLL
  • Fixed bug with determining read-only fields for SQL Server 7
  • Fixed bug with second script execution after the first execution failed with an exception
  • Fixed bug with parsing numbers followed by parameters whose names consist of digits
  • Fixed bug with locating variant values in TVirtualTable
  • Fixed bug with filtering in FetchAll=False mode

4.30.0.12 27-Sep-07

  • CodeGear RAD Studio 2007 supported
  • Added enhanced support for User-defined Types of SQL Server
  • Added support for distributed transactions with the new TMSTransaction component
  • Added support for Query Notifications with the new TMSChangeNotification component
  • Improved support for SQL Server Compact Edition with the new TMSCompactConnection component
  • Added support for getting results from queries with the FOR XML clause in readable view
  • Added ability to lock records and tables
  • TMSMetaData is enhanced with more schema row sets
  • Added support for connection encryption without certificate validation
  • Added support for detailed error messages output to DBMonitor
  • Added ability to force record fetch for datasets open in FetchAll=False mode
  • Added ability to use the default login database if no database is assigned on connect
  • Improved color schema of syntax higlighting with SynEdit
  • Added the OnProgress event in TMSLoader
  • Optimized memory utilization when loading XML files by the TVirtualTable.LoadFromFile method
  • Added ability to send the DataSetChange event after dataset open
  • Fixed bug with using the Filter property for FindFirst and similar methods when Filtered is False
  • Fixed bug with calling First after changing UpdateRecordTypes in Edit mode
  • Fixed bug with Disconnected Model and Pooling
  • Fixed bug with commiting updates in CachedUpdates mode
  • Fixed Assert with TCRBatchMove and BLOB fields
  • Avoided design-time bug with UniSynEdit
  • Bug with save/load data to/from XML fixed
  • Fixed several bugs with NonBlocking
  • Fixed bug with RefreshQuick and master/detail relationships

4.10.0.10 02-Aug-07

  • Added the XML data type to the parameters list in design-time parameters editor
  • Fixed bug with PSGetDefaultOrder method freezing for queries with complicated ORDER BY clauses
  • Fixed bug in TCRBatchMove with mapping fields by name when Fields count and FieldDefs count are not equal
  • Fixed bug with adding fields in TVirtualTable
  • Fixed bug with Pooling and Local Failover
  • Fixed bug with "Invalid Variant Type" exception under Windows 2000 when TDataSet.Refresh is called
  • Fixed bug with performance penalty when processing lookup and calculated fields
  • Problem with DBMonitor integration under Windows Vista Ultimate fixed
  • Bug with field names quotation in CRDBGrid fixed
  • Fixed bug with freezing in NonBlocking mode
  • Fixed bug with setting wrong parameter types for queries provided to SQLInsert, SQLUpdate, SQLDelete, SQLRefresh
  • Fixed bug with setting the CanModify flag for computed fields
  • Fixed bug with ReturnParams option and parameter types in Update SQLs
  • Fixed bug with the RereshQuick method for queries with the WHERE clause
  • Fixed bug with setting the Hidden flag for FieldDescs with SQL Server Compact Edition and Windows Vista
  • Fixed bug in TMSStoredProc with Local Failover and Disconnected Model
  • Fixed bug compound field names quotation
  • Changed ancestor of TMSXMLField from TMemoField to TField due to Delphi field types limitation

4.10.0.9 12-Jun-07

  • C++Builder 2007 supported
  • TMSConnection.Options.FailoverPartner property added
  • Added ability to customize information view about fields in DataSetManager
  • Replacement of the TwwDataSource with TMSDataSource in the BDE/ADO Migration Wizard added
  • Performance of some operations in DataSet Manager improved
  • Bug with the BaseSQL property set to an empty string after assigning macro values fixed
  • Bug with incorrect registry key used by connect dialog to save/load the Server value fixed
  • Bug with refreshing records in detail dataset fixed
  • Fixed bug with lookup and data fields with the same name
  • Fixed bug with reopening queries in NonBlocking mode
  • Fixed bug with calling the RefreshQuick method for the detail DataSet
  • Fixed bug with calculated fields with ftDate and ftTime data types
  • Fixed bug with comparing string values during locate ans sort operations
  • Fixed bug with prepared stored procedures, whose result set depends on parameter values
  • Avoided Delphi 6 bug in the TryStrToBool function
  • Fixed bug with retrieving stored procedure output parameters with DECIMAL data type
  • Fixed bug with raising exceptions when locating records on filtered recordsets
  • Removed restriction on datasets that TMSDataSource can be associated with
  • Minor bugs in DataSet Manager fixed

4.00.0.7 16-May-07

  • Added ability to drag datasets between connections in group by connections mode in DataSet Manager
  • Added ability to assign DataSource and DataField properties of DevExpress DB-aware controls automatically in DataSet Manager
  • Extended abilities of assigning default controls for datasets and fields in DataSet Manager
  • Fixed bug in the MSDataAdapter component with reading BLOB fields
  • Fixed bug with AV failure after second call to CommitUpdates when there are skipped records in cache
  • Bug with processing stored procedures with XML parameters fixed
  • Fixed bug with retrieving information about foreign keys of a table using the TMSMetaData component
  • Fixed AV bug with opening detail DataSet when master DataSet is not TCustomMSDataSet descendant
  • Fixed bug with "DisposeBuf failed" exception on updating string fields in CachedUpdates mode
  • Bug when UnPrepare is not called for TCustomDASQL on changing value of a macro fixed
  • Fixed bug with loading DataSet Manager package in a localized IDE
  • Fixed minor bugs in DataSet Manager
  • Fixed Access Violation bug on Delphi 2006 exit on Windows Vista
  • Fixed minor bugs in installation for C++Builder and Delphi 2007

4.00.0.6 20-Apr-07

  • Added support for DevExpress controls in DataSet Manager
  • Added support for using TMemDataSet.IndexFieldNames with RefreshQuick
  • FastScript v1.9 support added
  • Fixed bug with SQL Generator in design time
  • Fixed bug with trimming SQL texts in design-time editors
  • Bug with setting RecNo property for filtered datasets fixed
  • Bug with PSGetTableName returning incorrect value after changing the SQL property fixed
  • Bug with calling TDataSet.Edit for master DataSet in CachedUpdates mode fixed
  • Minor bugs in installation fixed
  • Fixed bug in SQL Generator with generating REFRESH statements for detail DataSet
  • Fixed AV failure with deleting records in CachedUpdates mode
  • Fixed bug when detail DataSet is refreshed on switching master DataSet to Edit mode
  • Fixed bug with loading files in TMSScript editor
  • Fixed bug with calling design-time editors of TDADataSource descendants by double click
  • Fixed access violation when loading DataSet Manager package under Delphi 2007 and Windows Vista
  • Fixed bug with DataSet Manager when IDE freezes on loading a form with a large quantity of datasets
  • Fixed bug with SQL Server Compact and databases with maximum database size greater than 128 MB
  • Fixed bug with executing parametrized queries in Detail DataSet from design-time editor
  • Fixed bug with the RefreshQuick method and SELECT statements containing column aliases
  • Fixed bug in RefreshQuick method with semicolon at the end of the SELECT statement
  • Fixed bug with displaying invalid object property type in object inspector
  • Fixed bug with filter expression that contains several consecutive left brackets

4.00.0.5 06-Apr-07

  • TCustomMSDataSet.CreateProcCall and TMSSQL.CreateProcCall methods added
  • DataSet Manager stability improved
  • Fixed bug in SQL Generator with complex SELECT statements
  • Bug with setting RecNo property for filtered datasets fixed
  • Bug with Locate on ordered data fixed
  • Fixed bug with XmlTextReader.Eof property under C++Builder
  • Internal error in Delphi 5 fixed
  • Fixed bug with calling RefreshQuick method for SDAC DataSet with parameters in query
  • Fixed bug with identity columns in SQL generator

4.00.0.4 20-Mar-07

New functionality:
  • Delphi 2007 for Win32 supported
  • Disconnected model for working offline and automatically connecting and disconnecting supported
  • Local failover for detecting connection loss and implicitly reexecuting some operations supported
  • Added DataSet Manager to control project datasets
  • New TMSScript component for easy execution of multistatement scripts with the following features added:
    • Support for executing individual statements in scripts
    • Support for executing huge scripts stored in files with dynamic loading
    • Ability to use standard MS SQL client tool syntax
  • New component for transferring data between all types of TDataSets descendants added
  • New TMSServiceBroker component for SQL Server 2005 queuing and reliable messaging added
  • New TMSLoader component for improving records insertion performance added
  • New TMSDump component for loading data to and from the server added
  • Data export and import to/from XML supported
  • WideMemo field type in Delphi 2006 supported
  • Support for sending messages to DBMonitor from any point of your program added
  • Added asynchronous execute and fetch modes
  • Compressed BLOBs supported

Support for more MS SQL server functionality:

  • MS SQL Server Compact Edition supported
  • Multiple Active Result Sets (MARS) supported
  • Support for new data types, including XML, varchar(MAX), nvarchar(MAX), varbinary(MAX) added
  • Support for a new level of transaction isolation added
  • Support for more server objects in TMSMetaData added
  • Stored procedure parameters with default values supported
Extensions and improvements to existing functionality:
  • General performance improved
  • Master/detail functionality extensions:
    • Local master/detail relationship support added
    • Master/detail relationship in CachedUpdates mode support added
  • Working with calculated and lookup fields improvements:
    • Local sorting and filtering added
    • Record location speed increased
    • Improved working with lookup fields
  • Greatly increased performance of applying updates in CachedUpdates mode
  • Connection pool functionality improvements:
    • Efficiency significantly improved
    • API for draining the connection pool added
  • Ability to customize update commands by attaching external components to TMSUpdateSQL objects added
  • Support for DefaultValues on record insertion added
  • Some performance improvements achieved:
    • NUMERIC fields fetching
    • Update commands execution while editing data set
    • DataSet refreshing
    • Records refreshing after updates and inserts
  • Support for selecting database name in TMSConnectDialog added
Usability improvements:
  • Syntax highlighting in design-time editors added
  • Demo projects became better organized and clearer
  • FAQ added

3.80.0.34 05-Dec-06

  • Fixed bug with TraceFlags in DASQLMonitor (D16224)
  • Fixed bug with TDAParam.AsDate property (D16213)
  • Fixed bug with wrong value of the StatementTypes variable in the BeforeUpdateExecute event
  • Bug with AV failure when modifying VirtualTable data in design time fixed

3.80.0.33 31-Oct-06

  • Bug with ApplyUpdates and OnUpdateError in SDAC Trial fixed
  • Bug with comparing Unicode strings fixed
  • Bug with BeforeDisconnect event lost in design time fixed
  • Bug with debug mode in design time fixed
  • Bug with RefreshRecord in CachedUpdates mode fixed
  • Bug with mouse wheeling in FilterBar and Search bar of CRDBGrid fixed (15675)

3.80.0.32 29-Sep-06

  • Limited support added for Windows Vista Beta 2
  • Memory usage optimized for tables with many fields
  • Fixed bug with SQLNCLI provider and server cursors
  • Fixed bug with unquoted '@' symbol in connection string
  • Design-time bug with IDE version in TMSConnectionEditor in Delphi 2005 fixed
  • Fixed bug with macros and "&" operand

3.80.0.31 28-Aug-06

  • Support for Professional editions of Turbo Delphi, Turbo Delphi for .NET, Turbo C++ added
  • Bug with automatic detail field value generation fixed (D12886)
  • Fixed bug with TrimVarChar
  • Fixed bug with FindKey method when the primary key has field of type Int64 (D12558)
  • Added capability to use quoted field names in IndexFieldNames property (D10091)
  • Bug with canceling edit on record with BLOB fields fixed
  • Bug with WideString lookup fields size fixed
  • Bug with loading wide strings in TVirtualTable fixed
  • Added support for macros names in which first symbol is digit
  • Bugs with parsing macros fixed
  • Bug with filtering DateTime fields when filter expression format differs from one in local system fixed (D12823)

3.70.3.30 07-Jul-06

  • Fixed bug with wrong line number in DAScript.EndLine property (M12015)
  • Fixed bug with filtering empty strings (S12329)
  • Bug with using calculated and lookup fields in Master/Detail relationship fixed
  • Fixed bug with design-time editor for Detail dataset in Master/Detail relationship (M12021, M11914)
  • Bug with modifying FieldDefs in TVirtualTable fixed
  • Performance of SaveToFile and LoadFromFile functions in TVirtualTable improved (D12435)
  • Bug in TVirtualTable Editor fixed

3.70.3.29 31-May-06

  • New MS SQL Server 2005 data types supported
  • TMSConnection.Options.InitialFileName property added
  • Modifying FieldDefs in TVirtualTable component accelerated
  • Fixed bug with memory leak in TCustomDADataSet (11636)
  • Bug with calling Parameter Editor from Object Inspector fixed (11671)
  • Bug with Master-Detail linked by parameters fixed

3.70.2.28 18-May-06

  • SDAC is now compatible with InterBase Data Access Components
  • Bug with Prepare method in Delphi 5 fixed

3.70.1.27 12-May-06

  • Fixed bug with loosing connection for FetchAll=False datasets (M11398)
  • Added support for MIDAS TDataSet.PSExecuteStatement ResultSet parameter (M11351)
  • Fixed bug with AV failure in ApplyUpdates after CommitUpdates
  • Bug with local filter under CLR fixed (11291)
  • Bug with using alternative memory managers fixed

3.70.1.26 14-Apr-06

  • Fixed bug with positioning in grid after TCustomDADataSet.Locate (11256)
  • Fixed bug with Master/Detail relations and local sorting and filtering (11254, 11255)
  • TCustomDADataSet.Locate now centers position in DBGrid (10976)
  • Bug with displaying query objects in objects tree in DBMonitor fixed
  • Optimized using of system resources when opening query (O11270)
  • Fixed bug with design-time SQL Generator
  • Added OLE DB limitation workaround when preparing query with parameters in subquery

3.70.1.25 10-Mar-06

  • Ability of trimming (N)VARCHAR fields with CustomDADataSet.Options.TrimVarChar property added
  • Added support for MIDAS master-detail relations
  • Fixed bug with fetching (N)VARCHAR(4000) fields
  • Fixed bug with erroneous exception on TDAParam.LoadFromStream
  • Bug with AV failure when calling CommitUpdates method of inactive dataset fixed
  • Bug with error failure when assigning empty dataset to VirtualTable under CLR fixed

3.70.0.24 26-Jan-06

  • Support for Delphi 2006 added
  • Support for MS SQL Server 2005 added
  • FastReport 3.20 support added
  • Fixed bug with single MacroChar in string constants inside SQL
  • Bug with invalid processing of SQL statements when using SQL keywords as macros name fixed
  • Fixed MS SQL server bug with processing 'SET STATISTICS IO ON' statements
  • Fixed bug with using CheckRowVersion property and RefreshRecord method

3.55.2.22 19-Dec-05

  • Fixed bug with trimming VARCHAR fields
  • Bug with restoring BaseSQL property fixed

3.55.2.21 07-Dec-05

  • TMSConnection.Options.PersistSecurityInfo property added
  • TCustomDADataSet.FindKey, TCustomDADataSet.FindNearest methods added for BDE compatibility
  • Fixed bug with Locate by multiple fields
  • Fixed bug with unchanging RecordCount value after CancelUpdates
  • Bug with refreshing record after changing SQL property fixed
  • Fixed SetWhere function bug
  • Fixed bug with server cursors when RefreshOptions property contains roBeforeEdit flag

3.55.1.20 24-Oct-05

  • Fixed bug with open detail TMSTable when master is not opened
  • Fixed bug with design-time SQL Generator
  • Fixed bug with EOLEDBError.MessageWide
  • Bug with updating FilterSQL fixed
  • Bug with VirtualTable registration in CBuilder fixed
  • Bug with VtReg.pas in Pro version fixed
  • Bug with closing dataset (SQL contains macros) when the InsertSQL property changes fixed
  • Bug with incorrect sequence of calling BeforeClose, BeforeDisconnect events fixed

3.55.1.19 11-Oct-05

  • Unicode error messages support added with EOLEDBError.MessageWide
  • SQL Generator improved: now in design-time <FieldName> format is used instead of <FieldNo>
  • Fixed some bugs in design-time SQL Generator
  • Fixed bug with Master/Detail relations on string keys that differ in case only
  • Bug with reexecution after SQL statement changed fixed
  • Bug with assertion failure with OnNewRecord fixed
  • Fixed bug with detail refresh when field referenced by MasterFields property is empty
  • Fixed bug with extra detail record posts after master record changed
  • Bug with firing AfterScroll Event after detail dataset refresh fixed
  • Bug with simultaneous use of several DAC products fixed
  • Bug with changing FilterSQL of inactive dataset fixed
  • Bug with column sizing with CRDBGrid.OptionsEx.dgeStretch=True at design-time fixed
  • Bug with TCRColumn.SummaryMode=smLabel for string and date fields fixed

3.55.1.18 02-Sep-05

  • Deferred detail dataset refresh feature with TCustomDADataSet.Options.DetailDelay property added
  • Fixed bug with locating, filtering and local sorting of strings that contain '--'
  • Fixed DisposeBuf bug

3.55.0.17 02-Aug-05

  • Optimized macros processing
  • Fixed bug with using keywords as param name
  • Fixed bug with local sorting in dsEdit state
  • Fixed bug with getting Null for Blob fields
  • Improved behavior on parsing inline comments

3.55.0.16 05-Jul-05

  • Fixed performance bug with calling Execute (ReadOnly = True)
  • Fixed bug with sorting by GUID fields
  • Bug with TDAParam.AsString with TDataTime parameters fixed
  • Fixed bug with TMSConnection.ConnectioString design time editor

3.55.0.15 30-May-05

  • Ability of automatic preparing query with TCustomDADataSet.Options.AutoPrepare property added
  • Ability to synchronize position at different DataSets with TCustomDADataSet.GotoCurrent method added
  • Optimized MSSQLMonitor BLOB parameters processing
  • Improved behavior on editing master key on Master/Detail relation
  • Removed TMSStoredProc.ParamCheck property from design-time
  • Fixed bug with ignoring MSConnection.Options.WorkstationID
  • Fixed bug with DADataSet.CheckBookmark on filtered datasets
  • Fixed bug with Transactions on connection lost
  • Fixed bug with reconnect on connection lost

3.50.0.14 29-Apr-05

  • Update Pack 3 is required for Delphi 8
  • Fixed bug with FetchAll = False and QueryRecCount = True for Detail queries (6759)
  • MSQuery.AddWhere improved

3.50.0.13 29-Mar-05

  • Fixed bug with quoting fields in SQLRefresh
  • Fixed bug with FieldDefs.Update and prepared TMSStoredProc (6147)
  • Fixed bug with roAfterUpdate and changing primary key values (6389)

3.50.0.12 24-Feb-05

  • FastReport3 engine and demo added
  • TCustomDADataSet.UpdateObject support for MIDAS added
  • Fixed bug with CLR BLOB Locate
  • Fixed bug with FmtBCD Locate

3.50.0.11 24-Jan-05

  • Support for Delphi 2005 added
  • Support for MS SQL Server 2005 Beta 2 added
  • Guid fields support for VirtualTable added
  • Fixed some bugs with connection pooling
  • Fixed bug MSParam.Size on CLR
  • Fixed bug with KeepDesignConnected
  • Fixed bug with design-time SQL generator and macros
  • Fixed bug with design-time MSStoredProc SQL generator
  • Fixed bug with IndexFieldNames on identical values
  • Fixed infrequent bug with IndexFieldNames
  • Fixed bug with params on MSQuery.Execute with SELECT
  • Fixed bug with disconnect on fatal error

3.00.2.9 23-Nov-04

  • Fixed bug with IndexFieldNames and Locate
  • Fixed bug with setting MinValue and MaxValue for tinyint fields
  • Fixed bug with KeepDesignConnected

3.00.2.8 28-Oct-04

  • Fixed C++Builder hpp bug

3.00.2.5 21-Oct-04

  • lxPartialCompare option for DataSet.LocateEx added
  • Fixed bug with OnFilterRecord and Blob fields (4962)
  • Fixed bug with Reconnect and prepared statements (4910)
  • Fixed bug with BlobField.SetAsString

3.00.1.3 10-Sep-04

  • Common class DADataAdapter isolated to CoreLab.Dac.AdoNet.dll library
  • Fixed bugs with ctKeyset, ctDynamic and default values (4082)
  • Fixed bug with evaluation period in Trial version
  • Support for TDAConnectionOptions.AssignTo added
  • Fixed bug with filtering NULL string values (4776)
  • Fixed bug with large blobs in TVirtualTable (4769)

3.00.0.2 20-Aug-04

  • Fatal errors processing improved
  • Delphi 7.1 bug fixed
  • MDAC 2.8 Lost connection bug fixed
  • Fixed bug with QueryIdentity and complex table names (4634)
  • Fixed bug with quoting complex names

3.00.0.1 21-Jul-04

  • Support for Delphi 8 added
  • Local sorting ability with TMemDataSet.IndexFieldNames added
  • Connection pooling support
  • TCRDBGrid sources in Standard edition
  • MSDataAdapter component added
  • .NET Windows Forms demo project added
  • ASP.NET demo project added
  • TMSConnection.GetStoredProcNames, GetTableNames, GetDatabaseNames added
  • TMSConnection.ClientVersion, ServerVersion added
  • Milliseconds support added
  • TCRColumn.TotalValue property added
  • New time trial limitation
  • Fixed StackOverflow bug with opening empty ctStatic cursors
  • Fixed bug with Refresh server cursors (4478)
  • Fixed bug with small memory leak on SQL error (DbxSda4344)
  • RefreshRecord now updates timestamp field as default
  • Fixed bug with updating non-dbo owned tables (4193)
  • Fixed bug with CustomDADataSet.Options.ReturnParams (4159)
  • Fixed bug with CRDBGrid
  • Fixed bug with getting RecordCount if Filtered = True (4125)
  • Fixed bug with getting OldValue after Insert
  • Fixed bug with TrimFixedChar and dll

2.45.2.25 15-Mar-04

  • Mouse wheel support added to CRDBGrid
  • Local constraints for ctKeyset, ctDynamic disabled (4082)
  • Fixed bug with quote char in Filter property
  • Fixed bug with assigning name with spaces to Database property
  • Fixed bug with getting Identity value that exceeds MaxInt (4081)
  • Fixed bug with RefreshRecord and binary key fields (4089)

2.45.2.24 05-Feb-04

  • Fixed bug with restoring position after Refresh (M3962)
  • Fixed bug with TCustomMSDataSet.PSGetKeyFields (M4001)

2.45.2.23 30-Dec-03

  • Fixed bug with processing ftTime and ftDate parameters
  • Fixed bug with setting Null value for string parameters
  • Fixed bug with processing Blob and Memo parameters (3709, 3726)

2.45.2.22 24-Nov-03

  • Fixed bug with getting RecordCount (ParamCheck = False) (3524)

2.45.2.21 02-Oct-03

  • Methods TMSSQL.BreakExec and TCustomMSDataSet.BreakExec added
  • Property TMSConnection.Options.AutoTranslate added
  • Method ExecSQL in TMSConnection added
  • Methods GetTableNames and GetDatabaseNames in TMSConnection added
  • Unicode support for Locate on Win9x added
  • Fixed bug with MSDataSet.BeforeUpdateExecute and AfterUpdateExecute (3347)
  • Fixed bug with MSParam.Size (3345)
  • Fixed bug with calling Refresh after RefreshRecord (M3269)
  • Fixed bug with MSDataSet.UpdatingTable set at design-time (3164)
  • Bug with opening queries (FilterSQL <> '', StreamedActive = True) fixed (M3497)

2.45.1.20 02-Jul-03

  • Fixed bug with possible AV on destroying DataSet in Delphi5 (3069)

2.45.1.19 10-Jun-03

  • Parameter processing for complex queries optimized (3058)
  • Design-time bug occured in Delphi5 and CBuilder5 fixed

2.45.1.18 05-Jun-03

  • SQL Generator improved - support for complicated statements added (2993)
  • SQL Generator improved - "Quote names" checkbox added
  • Design-time SQL Generator was simplified
  • TParam -> TDAParam
  • Bug on Post (Insert/Append) when InsertSQL execution fails fixed
  • Fixed bug with ApplyUpdates if Options.ReturnParams is False and Options.QueryIdentity is True
  • Fixed bug on PSGetKeyFields after dataset is closed(3034)
  • Fixed bug with wildcard Locate on WideString fields
  • Fixed memory leak on posting BLOB data with ctKeyset, ctDynamic
  • Fixed bug with trimming char fields having empty values (2987)
  • Fixed bug with calling RefreshRecord on SELECT w/o data fields
  • Fixed bug with calling RefreshRecord on ctDynamic (3053)
  • Fixed bug with MultiSelect DBGrid for ctKeySet, ctStatic (3054)

2.45.0.17 05-May-03

  • property MSConnection.Options.WorkstationID added
  • Performance to insert large BLOBs improved
  • Fixed bug with using SDAC from dll (2963)
  • Fixed bug with getting SharedObj-parameters from datasets with LookUp fields (2948)

2.45.0.16 04-Apr-03

  • Performance significantly improved
  • event TMSConnection.OnInfoMessage added
  • Multiple Errors support added
  • EMSError now inherited from EOLEDBError
  • property TBlob.AsWideString added
  • property MSConnection.Options.ApplicationName added (2813)
  • Parameters parsing improved. Symbol ':' in string literals is ignored (2836)
  • Network error processing improved (2554, 2571)
  • MSConnectDialog improved
  • Performance demo added
  • Bug with RefreshRecord fixed
  • Small memory leak in RefreshRecord on ctKeyset, ctDynamic removed
  • Fixed bug with storing unicode strings in Memo fields
  • Fixed bug with processing 'Fail' parameter in TMSConnection.OnError (M2876)
  • Fixed bug with password storing in MSConnection.ConnectString (2841)
  • Fixed bug with design-time SQL Generator (2885)
  • Bug with transaction control on ctKeyset, ctDynamic fixed (2885)
  • Fixed bug with TMSMetaData.Refresh (2872)
  • Fixed bug with changing TMSMetaData.ObjectType

2.40.0.15 24-Feb-03

  • WideString support added
  • Refresh improved - current record is restored after Refresh call
  • Supported types list for TVirtualTable extended. WideString, Smallint, Word, Boolean, Largeint, Currency, Date and Time field
  • pes added (2779)
  • Performance of VirtualTable.AssignDataSet improved
  • Property MSDataSet.Options.QuoteNames added
  • Property MSConnection.Options.KeepDesignConnected added
  • Property MSConnectDialog.StoreLogInfo published
  • Bug with SDAC and ADO incompatibility under CBuilder fixed (2751)
  • Bug with clearing old value for Null output parameters fixed
  • Bug with wrong setting parameter values in WHERE clause fixed
  • Bug with processing empty param values in ConnectString fixed
  • Bug in MSTable.Execute fixed
  • Support for LIKE expressions in Filter property added(DAC-2706)
  • Precision and Size property values setting bug for TBCDField and TFMTBCDField fixed(2723)
  • Bug with getting field aliases on old clients fixed (2780)
  • Bug with design-time created fields case sensitivity fixed (2663)
  • Bug with some memory leak on each connection to server fixed (2679)

2.35.0.14 30-Jan-03

  • Improved performance for opening queries with lot of parameters
  • Dataset 'with many fields' update performance improved
  • 'Connection Lost' error processing improved
  • MSDataSet.Locate improved (2589)
  • Fixed bug with compiling applications on C++ Builder
  • Fixed bug editing MSConnection.ConnectString property on DataModule (2586)
  • Getting identity improved for MS SQL 2000 (SCOPE_IDENTITY() instead @@Identity)
  • Fixed bug with getting Identity value after inserting to view (2567)

2.35.0.13 04-Jan-03

  • Bug with string quote in filter expression fixed (O2532)

2.35.0.12 26-Dec-02

  • Speed optimization for opening small queries (2378)
  • MSConnection.Options added (2454)
  • Limited MSConnection.ConnectString support added (2356)
  • Output string and (var)bytes parameters are now obtained from the server
  • with the maximum length not depending on set Param.Size (2355)
  • DBMonitor client implementation moved to COM server
  • Bug with complex table names fixed
  • Fixed common bug with lost data in DT-editors(D2137)
  • Bug with design-time MSConnection in DataModule fixed (O2290)
  • Design-time editor for MSTable bug fixed (2433)
  • BLOB fields post for Server Cursors optimized(2117)
  • Bug with Master/Detail relation for ClientDataSet fixed (O2423)
  • Fixed some bugs with OutOfMem (1979)

2.30 30-Sep-02

  • Delphi 7 support
  • New memory management model for ftString and ftVarBytes types. Allows significantly decrease memory usage on large tables fetch. Controlled by FlatBuffers dataset option
  • Support for blob fields in CachedUpdates mode

2.05 09-Aug-02

  • DBMonitor support

2.00 18-Jul-02

  • Server cursors supported
  • Queries with Multiple Result Sets supported
  • Performance improved
  • Opening queries without fetching all rows to client (FetchAll = False) supported
  • UniDirectional support added
  • Quick getting Identity value
  • Refresh supported for StoredProc
  • FullRefresh supported
  • Check for old row values while executing Update and Delete added
  • Changed behavior on close connection with open transaction from Commit to Rollback

1.30 21-Mar-02

  • C++ Builder 6 is supported

1.20 08-Nov-01

  • Added TMSParam class to represent parameters
  • Query Analyzer and Enterprise Manager integration added
  • Accelerated getting identity value on refresh

1.00 26-Aug-01

  • Initial release of SDAC