(C) 2005-2024 Ethea
This document lists the major changes in all IBDX versions.
{$IFDEF QUALIFIED_FIELD_NAME}
By default, the new property QualifiedFieldNames is False
{$DEFINE CONVERT_TIMESTAMP_TO_DATETIME}
{.$DEFINE CONVERT_CHAR1_TO_BOOLEAN}
By default, TimeStamp fields are converted as DateTime fields
but Char(1) fields are not converted as Boolean fields (as in previous 2.2.3 version)
Added support for Delphi 2010. IBDXAdministrator and IBDXDataPump deprecated.
Fixed: key fields were not reset when changing TableName in a TIBDXTable.
Fixed error when calling ExecSQL on a query linked to a master through DataSource.
Fixed possible AV when destroying an open TIBDXDatabase.
Automatic conversion of SQLTimeStamp fields to DateTime for best BDE compatibility.
Added support for some more devart-specific connection params.
Optimization: metadata is not retrieved unless really needed.
Fixed: IBDX incorrectly accesses dbexpress ini files in Delphi 2007 and 2009.
Added TIBDXSession.SQLHourGlass property.
Added support for Delphi 2009 Update 1. Delphi 2009 without updates is not supported.
Added support for "December 2007 Update" for Delphi 2007 and RAD Studio 2007. Previous update levels are no longer supported.
Added support for ftAutoinc fields (MSSQL only).
Added support for Delphi 2007 for Win32 UP 3 and RAD Studio 2007.
Note: Delphi 2007 for Win32 < UP 3 is no longer supported.
#98 – Implemented: TIBDXDatabase.DriverName.
#99 – Fixed: Query output params not available.
#100 – Fixed: TIBDXStoredProc doesn't always fetch the param definitions from the database.
#87 – Implemented: Get rid of IBDX_ENABLEBCD.
#88 – Implemented: Map FMTBcd fields to BCD.
#90 – Fixed: Installation instructions are not up-to-date.
#91 – Fixed: Master params not assigned for a detail table.
#92 – Fixed: Field values not set when inserting rows through a live dataset.
#93 – Fixed: GetKeyFieldNames ignores the database's SchemaName.
#94 – Fixed: Insert not working on live datasets with lookup fields.
#95 – Fixed: Deleting from a live dataset with no primary key empties the table in DB2.
#85 - Fixed: AliasNames and DatabaseNames are case-sensitive.
#86 - Done: Implement TIBDXSession.GetTableNames and TIBDXDatabase.GetTableNames.
#89 - Done: Delete unit IBDXFields - move things into IBDXDbTables.
Various small fixes and improvements.
Support for Delphi 2007 was broken in the version included in Delphi's Partner DVD. This release fixes it.
#83 - Fixed: Error "No value for param X" when re-using a parametric query component.
#82 - Done: Implement TIBDXDatabase.HandleShared.
#81 - Fixed: Can't have two database object with the same DatabaseName at once.
#59 - Fixed: MastAppIBDX uses wrong class names.
#78 - Fixed: TIBDXDBDataSet.FieldDefs is not writable.
#79 - Fixed: Error "Invalid Field Size" when a float field has a size.
#80 - Fixed: Error "Could not convert variant of type (Array Byte) into type (integer)" when posting a live query with a ftBytes field.
This version adds support for Delphi 2007 for Win32 and dbExpress 4.
Configuration files are now different for different versions of dbExpress; for Delphi 6 and Delphi 7, the file names are still IBDXDrivers.ini and IBDXConnections.ini; for Delphi 2006 they become IBDXDrivers3.ini and IBDXConnections3.ini, and for Delphi 2007 IBDXDrivers4.ini and IBDXConnections4.ini. The registry key where the path to the configuration file is stored has also changed, from HKEY_LOCAL_MACHINE\SOFTWARE\IBDXAdmin\ConfigFile to HKEY_CURRENT_USER\SOFTWARE\InstantBDExpress\ConfigFileName (or ConfigFileName3, or ConfigFileName4).
The alias name used in the demos was unified to MASTSQL (it was previously MASTSQL or MASTSQL30 depending on the version of Delphi). Due to the change above, though, the alias definition resides in a different configuration file depending on the version of Delphi.
This version fixes a regression error in version 1.7.
#76 - Fixed: Error "Invalid argument" when calling Delete on a live query or table.
This is mainly a bug-fix release, although we have managed to put in quite some refactoring making IBDX overall closer to the BDE, faster and stabler.
#70 - Fixed: Wrong handling of post and delete errors in live datasets. Post errors in live datasets were not causing the dataset to stay in Edit mode; delete errors were not keeping the dataset on the same record. This has been fixed by redesigning the live update logic, which should have brought IBDX much closer to the BDE in this area, and fixed other unreported glitches as well.
#73 - Fixed: Detail dataset didn't refresh on master scroll if there are unapplied cached updates. Restored an undesirable behaviour for full BDE compatibility, as applications might depend on it.
#61 - Fixed: Incompatible behaviour in case of errors when doing ApplyUpdates on a set of datasets. When doing ApplyUpdates on a set of datasets (for example a M/D structure), in case of errors when applying the changes to a dataset other than the first one, the BDE is still able to retry later, while IBDX wasn't. Now it is.
#64 - Fixed: Master-Detail synchronization: When the detail dataset is a Table, it should be refreshed whenever a key field in the master is modified, even before it's posted. No wonder Tables are slow with SQL databases. :-)
#62 - Fixed: Params not synchronized with the internal dataset. This was preventing M/D synchronization in certain cases.
Expanded documentation: added difference list, change log and FAQ.
Added support for Delphi 6.
Added full support for stored procedures (TStoredProc equivalent).
Direct access to the public support newsgroup (no need to e-mail us).
Added a few missing methods and properties to
TIBDXDBDataSet, TIBDXSession and TIBDXTable; moved a few published items down
to TIBDXTable, TIBDXQuery and TIBDXStoredProc for better BDE compatibility. In
particular:
added TIBDXSession.GetAliasDriverName and GetAliasNames;
changed prototype of TIBDXDBDataSet.ApplyUpdates to match the BDE's;
added TIBDXDBDataSet.CacheBlobs, FlushBuffers, ExpIndex, DBSession;
changed implementation of TIBDXQuery.UniDirectional - it's no longer
mapped to IsUnidirectional;
added TIBDXTable.BatchMove.
Assorted small fixes and improvements.
Separate binaries for all supported Delphi versions are supplied. You get to choose which version(s) you want at installation time. This is due ecause there are subtle incompatibilities between different dbX and drivers versions. In order to keep the setup file size down, binaries are compiled with run time packages enabled: each set of binaries will only work on machines where the corresponding Delphi version is installed.
The control panel applet is discontinued. Please use the IBDX Administrator directly.
First public release.