What's new in this build/version - New address - see below - New data aware controls - DataListBox, DataComboBox, DataRadioGroup, and DataCheckBox - New field class DecimalField for better support of fixed point numeric fields From the last build - Display width for fields (see UpdateTable property editor) - Dynamic loading of DLLs (no longer statically linked to DLLs) - Other improvements From prior builds - fix for queries created at run-time which contain parameters. - existing params no longer are re-created when a select statement is changed. Existing param info is saved and only new params are created. - fix for drivers which do not report blob lengths during fetch operations (eg Oracle drivers) - fix for binary stream read (was not updating stream position) operation. Indirectly fixes a problem in binary field save to file operations. - help file (see install.txt for installation instructions) - ExecDirect property to query component - RefGuide.wri, an early reference guide for the component library. See RefGuide for details on the features mentioned below. - Multiple connections per connection component. Up to 12 connections per component. - Connection number property to the query component. You can specify on which connection you want each statement to execute. - Sorting and searching routines added to the query component. You can now re-sort result sets without re-issuing a query. You can also search for records within a sorted result set. - Abstract base classes have been added into the component heirarchy to allow for server specific components that use the same data aware controls as and coexist with the ODBC components. Watch for server specific components in the near future! - Changed names of the data aware controls. Provided equivalent controls with the previous names for compatibility. - enhancements to TODBCImage - added LoadFromStream(aStream) and SaveToStream(aStream) to ODBCBinaryField - removed limitation of 16380 records in a result set - more efficient memory handling for blobs - added DisplayLabel to field objects (see UpdateTable dialog) - added TableFieldName to field objects (see UpdateTable dialog). This allows for updating of aliased fields (eg select custno cno from Customer). CNo would show up in the result set when CustNo is the actual field to be updated. - added TODBCImage control (read only for now) - added LoadFromFile(FileName) and SaveToFile(FileName) to ODBCBinaryField - fixed reading and writing of binary data to ODBCBinaryField - fixed reading and writing of text data larger than 64k to ODBCTextField - fixed bug of when data aware controls lose focus and are not connected to a odbcsource - fixed problem with opening a child query in a masters afteractivate event during form creation - added rowchanged event to query - added isnull to todbcparam (allows setting param to null) - added GetAsXXXX methods to TODBCParam - misc bug fixes - add DisplayFields property to the grid. If the string list is empty, then all fields are displayed. To show a subset of the fields, type the field names that you want to see in the string list, one field per line. The order of the fields in the list determines the order in the grid as well. - web page (url: http://www.guernsey.com) - bug fixes (mainly data aware control fixes, with a fix to the connection component when cmConnect method is used - this is the same fix the was included with the last build when driverconnect was used). - OnGetFieldText and OnSetFieldText events have been added to the ODBCQuery component. The OnGetFieldText is called each time a data aware controls requests data to display. This gives the ability for user formatted data. The event header is procedure (AField: TODBCField; var Value: String) where Value is defaulted to the AsString value. If you want to format the data, assign the formatted value to Value. Similarly OnSetFieldText is called any time a data aware control tries to store data back to the field. It has the same header where Value is the string value that will be assigned to the field. If you need to manipulate the data before it can be stored, then assign the final value to Value. In both cases AField is the field object of the field in question. - data aware controls (grid, memo, and edit) - fixes from odbcqry1.zip (connection errors when using driverconnect to some sources) - more events - several misc fixes - changes to odbcQuery component to support data aware controls More to enhancements to follow... Enjoy, Dan Daley Guernsey Software 1026 Lakeside Drive Felton CA 95018