--- ibx/trunk/changelog 2019/01/18 11:10:37 270 +++ ibx/trunk/changelog 2020/07/17 22:57:55 307 @@ -1,4 +1,29 @@ -IBX Change Log version (2.3-3 Build 11336) Fri, 28 Dec 2018 10:04:17 +0000 +IBX Change Log version (2.3-4 Build 12041) Fri, 17 Apr 2020 14:00:32 +0100 + +1. TIBXDataSet and Generators: Generator Names that are not all upper case or + not SQL Identifiers are now supported. + +2. TIBXScript: Set Generator is no longer rejected as unrecognised SQL and is + passed to the Firebird engine for execution. + +3. TIBDataSet: Unidirectional datasets now give an error message if an attempt + is made to scroll back. + +4. New unit: IBMessages.pas. Contains only messages used by IBX and not FBIntf + +5. TIBLookupComboEditBox: When generating auto-complete SQL, the ListField is now + only enclosed in double quotes in SQL dialect 3 and when it needs to be. + +6. TIBLookupComboEditBox: when the list source opens, the ListField name is now + validated. If no match is found in the list of field names and the database has + been opened in SQL Dialect 3, then the ListField Name is converted to upper case + if it then matches a field name. Otherwise, a Listfield not valid exception occurs. + +7. IBGeneratoreditor.pas: Add missing parenthesis around "IS" statement for compliance + with fpc 3.2. + +IBX Change Log version (2.3-3 Build 11512) Fri, 28 Dec 2018 10:04:17 +0000 + 1. New property for TIBDatabase and TIBXServicesConnection. This is "ConfigOverrides" and is used to override the default settings in the client side "firebird.conf" This @@ -62,14 +87,65 @@ IBX Change Log version (2.3-3 Build 113 This only applies to columns with an SQL Type of SQL_VARYING and SQL_TEXT. 8. TIBDataSet now raises an exception when ParamByName called with an invalid parameter name. + Uses "FindParam" if in order to find out if a parameter with a given name exists + and without raising and exception if it does not. -9. TIBQuery now uses IBX SQL Parser instead of TParams SQL parser in order to ensure +9. TIBQuery now uses IBX SQL Parser instead of the TParams SQL parser in order to ensure consistency with SQL queries. 10. CaseSensitiveParameterNames property added to TIBSQL, TIBDataSet and TIBQuery. When true, SQL statement parameter names are parsed case sensitive. Note for TIBDataSet only applies to Select query. +11. IBEvents: removing a TIBEvent component from a form should no longer result in + an IDE exception. + +12. LocalDBSupport: initial database creation should now work correctly + when the schema source is an sql file. + +13. TIBCMLocalDBSupport: new event handler "property OnProgressEvent: TOnProgressEvent" + when defined, this handler will be called by the internal TIBXScript during + initial database creation when the schema source is an sql file and may be used + to provide a visual indication of progress in console mode. + +14. TCustomIBLocalDBSupport: new public property "InOnCreateDB: boolean". This is set + to true while a new local database is being created and its schema populated. + Useful in (e.g.) TIBDatabase.OnAfterConnect handler to suppress actions + when the database is disconnected/connected during the create DB procedure. + +15. TIBXScript: any User/password parameters found in a CREATE DATABASE statement + are now always ignored and replaced by the user name and password provided as + the login parameters for the TIBDatabase referenced from the TIBXScript. The + IgnoreCreateDatabase property still applies and the CREATE DATABASE statement is + completely ignored if this property is true. + +16. Code tidyup in IBTreeView: Node properties initialisation moved from TIBTreeView.AddNodes + to TIBTreeView.Added. An OnAddition event handler is no longer needed to initialise + ImageIndex and SelectImageIndex values on AddNode. + +17. TIBDatabase.Attachment and TIBXServicesConnection.ServicesIntf properties are now + read/write. This should enabled (e.g.) multiple instances of TIBDatabase to share + the same database connection. + +18. TIBDataSet and TIBQuery now support the TDataSet "Filter" property. + if provided, this should be an conditional SQL expression suitable for + including in an SQL Select statement "where" clause. If non-empty and the + "Filtered" property is true then the SQL expression provided as the value of + the "Filter" property is "ANDed" with any existing condition statement + in the SQL statement's "Where" clause. + + If the "Filter" property is set at run time, the "Filtered" property is true + and the dataset is already open, then the dataset is closed and re-opened automatically. + + The "Filter" condition may include IBX style parameters. In which case, their + value must be set by the dataset's "OnBeforeOpen" event handler. + + This is a public property for TIBDataSet and TIBQuery query and intended for + use at run time. + + Note: The property is a published property of TIBTable. The TIBTable functionality + is unaffected by this change. + IBX Change Log version (2.3-2) Wed, 05 Dec 2018 12:19:23 +0000 1. Remove need to check for IsMultiThread by providing access to GUI timers via