ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/changelog
Revision: 25
Committed: Sat Mar 14 10:44:03 2015 UTC (9 years, 8 months ago) by tony
File size: 9119 byte(s)
Log Message:
Committing updates for Release R1-2-2

File Contents

# User Rev Content
1 tony 25 IBX Change Log version (1.2-2) Sat, 14 Mar 2015 11:35:04 +0000
2 tony 23
3     1. A new IBControl - TDBControlGrid has been added. TDBControlGrid a lookalike
4     rather than a clone for the Delphi TDBCrtlGrid. TDBControlGrid is a single column grid
5     that replicates a TWinControl - typically a TPanel or a TFrame in each row. Each row
6     correspondes to a row of the linked DataSource. Any data aware control on the
7     replicated (e.g.) TPanel will then appear to have the appropriate value for the row.
8    
9     2. As suggested by Julio Jiménez, a new property "SQLHourGlass" has been added to TIBDatabase.
10 tony 25 When set to false (default true), the Hour Glass cursor is supcpressed and no cursor change
11 tony 23 takes place during database access. This may be useful when there are performance issues with
12     the change of cursor. Setting the property to false suppresses the change of cursor.
13    
14     3. As suggested by Julio Jiménez, a new property "AutoCommit" has been added to TIBDataSet, TIBQuery
15     and TIBTable. When set to acCommitRetaining (Default: acDisabled), a call is made to
16     Transaction.CommitRetaining immediately after every Post or Delete. This has the effect of
17     making all changes permanent immediately rather than when the transaction is explicitly
18     committed.
19    
20 tony 25 4. Experimental support for the Firebird 3 SQL_BOOLEAN type has been added while still
21     using the legacy Firebird API. Thanks to Gabor Boros for helping to this feature.
22 tony 23
23 tony 25 IBX Change Log version (1.2-1) Fri, 13 Mar 2015 11:14:15 +0000
24    
25     Development version only.
26    
27 tony 21 IBX Change Log version (1.2-0) Thu, 26 Feb 2015 10:34:04 +0000
28    
29     1. An internal select SQL Parser is now available for TIBCustomDataset descendents.
30     This is typically used during an "OnBeforeOpen" event handler to manipulate the
31     "Where" and "Having" clauses to implement user specified filters of arbitrary
32     complexity.
33    
34     2. A new Component Palette entry "Firebird Data Controls" is now available. This has
35     three new data aware controls dependent on IBX and which make use of the SQL Parser.
36     These are:
37    
38     - TIBLookupComboEditBox
39     - TIBDynamicGrid
40     - TIBTreeview
41    
42     TIBLookupComboEditBox is a TDBLookupComboBox descendent that implements "autocomplete"
43     of typed in text and "autoinsert" of new entries. Autocomplete uses SQL manipulation
44     to revise the available list and restrict it to items that are prefixed by the
45 tony 25 typed text (either case sensitive or case insensitive). Autoinsert allows a
46 tony 21 newly typed entry to be added to the list dataset and included in the available
47     list items.
48    
49     TIBDynamicGrid is a TDBGrid descendent that provides for:
50     - automatic resizing of selected columns to fill the available row length
51     - automatic positioning and sizing of a "totals" control, typically at the
52     column footer, on a per column basis.
53     - DataSet resorting on header row click, sorting the dataset by the selected column.
54     A second click on the same header cell reversed the sort order.
55     - Support for a "Panel Editor". That is on clicking the indicator column, the row
56     is automatically expanded and a panel superimposed on it. The panel can have any
57     number of child controls, typically data aware controls with the same datasource
58     as the grid allowing for editing of additional fields and more complex editors.
59     - Reselection of the same row following resorting.
60     - A new cell editor that provides the same functionality as TIBLookupComboEditBox.
61     Its properties are specified on a per column basis and allows for one or more
62     columns to have their values selected from a list provided by a dataset.
63     Autocomplete and autoinsert are also available. The existing picklist editor
64     is unaffected by the extension.
65    
66     TIBTreeView is a data aware TCustomTreeView.
67    
68     3. When getting a field value using FieldByName.AsVariant, an SQL_INT64 with a
69     zero scale will no longer return an error. An Int64 will be returned instead.
70    
71     4. TIBTransaction now has events for Before and After Transaction End and a new function
72     "GetEndAction" allowing the EndAction to be accessed by these event handlers.
73    
74     5. TIBQuery can now handle correctly queries which contain the same keyword parameter
75     repeated multiple times.
76    
77     6. TIBUpdateSQL will no longer return an error when "RowsAffected" is <> 1. This error
78     check used to get in the way of using Stored Procedures, and "Update or Insert"
79     statements.
80    
81     7. Insert, Modify and Delete property Editors now support Query Generation from
82     Stored Procedures.
83    
84     8. Three new examples illustrate the use of the new IB Controls
85    
86    
87 tony 19 IBX Change Log version (1.1-0) Mon, 07 Jul 2014 14:01:07 +0100
88    
89     1. TIBXSQLVAR code clean up and optimisation to improve client side "prepare" and parameter
90     setting performance. See "readme.field+param.names in the doc folder.(Thanks to
91     Gabor Boros for reporting this problem and for testing the improvements).
92    
93     2. IBX can now support dialect 3 quoted column names that contain spaces and which differ only in their case.
94     See readme.field+param.names in the doc folder.
95    
96     3. IBX SQL Editors will now automatically add double quotes around column names when the database
97     dialect is "3" and the column name contains spaces or is a Firebird 2.5 SQL Reserved Word.
98    
99     4. Param Type LargeInt now supported in TIBQuery and TIBStoredProc
100    
101     5. TIBSQL.ExecQuery retry on failure removed to avoid problems with "at most once"
102     actions.
103    
104     6. TIBTransaction.SetDefaultDatabase uses SetObjectProp instead of mis-using SetOrdProp (with
105     thanks to Yuriy Kopnin for pointing this out).
106    
107     7. GenerateParamName is now a published property of TIBSQL, TIBQuery and TIBDataSet.
108    
109     8. varWord, varShortInt and varInt64 added to TIBXSQLVAR.SetAsVariant and hence now available as variant types
110     for both fields and parameter setting.
111    
112     9. Changes to the Select SQL in an IBCustomDataset descendent should now be
113     visible in the Fields Editor immediately afterwards - rather than only after cycling the "active" property.
114    
115     10. TIBSQL SQL editor will operate correctly and not report an SQL syntax error on SQL test,
116     when DSQL ('?') parameter placeholders are used and the TIBSQL.GenerateParamNames property is set to true.
117    
118     11. TIBTable now has a property editor for "MasterFields"
119    
120     12. SQL Property Editors now include a checkbox "Allow DSQL Placeholder". This corresponds to the
121     GenerateParamNames property and should be set when using DSQL (i.e. '?') style parameters.
122    
123     13. The IBTransaction editor now has a radio button ("Unspecified") which is set when the combination
124     of settings is unrecognised. Selecting this radio button has no effect on the settings.
125    
126    
127 tony 17 IBX Change Log version (1.0-5) Sat, 28 Dec 2013 19:22:23 +0000
128    
129     1. TBookmark change conditional compile changed to >= 2.7.0 to match revised availability of change.
130    
131 tony 15 IBX Change Log version (1.0-4) Thu, 28 Feb 2013 16:56:13 +0000
132    
133     1. In a TIBCustomDataset descendent, a generator now only sets the value when
134     it is null. This allows for alternative user defined setting of the generator
135    
136     Many thanks to Julio Jiménez for this fix
137    
138     2. An Error Dialog is now displayed in the Lazarus IDE if IBX cannot find the Firebird Library
139     and suggests that the user may have forgotten to install it.
140    
141 tony 13 IBX Change Log version (1.0-3) Thu, 22 Nov 2012 22:53:39 +0000
142    
143     1. Conditional compilation used to limit registration of TIntegerField to
144     Lazarus versions less than 1.1
145    
146     2. When a database connection is created, character set is now by default set
147     to UTF8 (Unix) or to the current Windows code page (Windows) if in the range
148     1250 to 1254.
149    
150    
151 tony 11 IBX Change Log version (1.0-2) Tue, 09 Oct 2012 09:10:30 +0100
152    
153     1. TBookmark change conditional compile changed to > 2.6.2 to match expected availability of change.
154    
155    
156 tony 9 IBX Change Log version (1.0-1) Sun, 05 Aug 2012 20:00:04 +0100
157 tony 7
158     1. In IBCustomDataset. Changed CurBookmark from string to TBookmark for compiler versions > 2.6.0
159     Necessary because of TBookmark type and TDataSet.Bookmark property change in fpc 2.7.1
160    
161     2. IBX now registers TIntegerField as a "No Icon" component. This may be removed if the fpc DB
162     package is changed to do this (which it should do).
163    
164     IBX Change Log version (1.0-0) Sat, 28 Apr 2012 16:43:00 +0100
165    
166     1. Add "if active then active := false" to TIBCustomDataset destructor. (Avoid error on database close).
167    
168     2. Make use of $STATIC conditional in IBSQLMonitor (Needed for FPC 2.6.0 compliance)
169    
170     3. Database Property Editor: Character Set drop down box now uses "OnChange" rather than "OnCloseUp" to react to changes
171    
172     4. Property editors should now correctly resize.
173    
174     5. In IBDatabaseEdit.TestClick, the LoginPrompt is now set to the state of the LoginPrompt Checkbox
175     (restored original functionality)
176    
177     6. Under OSX, if IBX fails to load libfbclient.dylib, it will now try and load the firebird
178     library using the absolute path /Library/Frameworks/Firebird.framework/Firebird.