Subject Re: Test sub-release posted to all sites.
What is the 'Test' means , is that means it's not reliably or need
some beta tester , can i use it for real program development ?

--- In, "Jason Wharton" <jwharton@i...> wrote:
> 12/2/2000 Sub-Release 3.6 Bf
> I added two events to the TIB_DataPump component to make it easier
to react
> to things on a record-by-record basis. The reason I added them was
so that I
> could also add to the dialog form the cumulative RowsAffected. I
needed this
> because I goofed and messed up almost a 1,000 records in a database
and what
> I did to correct them is select the records from a backup database
and pump
> them through an UPDATE statement that was designed to only touch
the records
> that were wrong. Thus, by seeing that after it was complete the
> RowsAffected exactly matched the number of records I messed up I
knew I had
> got all of them restored. There also seemed to be a problem with
> columns in the source and being directly bound to a column that is
> This is now resolved.
> I revisited the TIBODataset.RecordCount property. The way I have
> this in IBO was not consistent with how TQuery operated. TQuery
would give
> you exact count of the records where with IBO I was only doing the
count of
> rows in the buffer with a few touchups for smooth grid behavior
where the
> vertical scrollbar was concerned. Now what I have decided to do is
to bring
> the TIBODataset class into full harmony with what the BDE did
before and
> give the developer the option to make IBO behave in the manner that
> different than the BDE but in my opinion preferable. This will be
> accomplished by adding in a new property called
RecordCountAccurate. This
> simple governs whether or not the RecordCount property is accurate
as the
> BDE would do or if it was allowable for the approzimation based on
> number of records in the buffer. I also added in a function called
> RecordCountQuery that will return the exact record count in all
> The above changes may affect the behavior of TDBGrid controls
> scrollbar. They will now do the 3 position only thumb position. To
get the
> smoothe auto-adjusting scrollbar as it was previously, set
AutoFetchAll to
> true or set the RecordCountAccurate property to false. Either one
of these
> settings will make the DBGrid control use the smoothe scrollbar
instead of
> the dumb one. Smooth meaning that you can move it precisely and
tell where
> in the dataset you are because it adjusts for each individule row
that is
> scrolled to. This is implemented by impacting the return result of
> IsSequenced virtual method of the TDataset class.
> I added in the BeforeScroll and AfterScroll events for the
TIBODataset class
> when a detail dataset is refreshed as a result of a new row in the
> dataset being selected. These had been omitted in the past and this
is a
> legitimate case for triggering the scroll events.
> I made the TIBODataset class not transfer values from the master
> when using a master-detail relationship when inserting into the
> dataset and the values for the target columns already have values
> into them. I had a developer complain that it should not overwrite
> values he has supplied.
> The TIBODataset class was not always handling the boolean column
> if there was one that was configured using the default and then
> customized in the same dataset. Now it doesn't matter what
combination of
> boolean columns are used. IBO will handle them properly whether
default or
> customized in the ColumnAttributes property.
> I fixed some SQLDialect 3 issues in the Browse form of IB_WISQL. It
was not
> handling some of the stored procedure and trigger names just right
> selecting information from the metadata and then parsing statements
from it.
> I improved the TIB_Grid control's ability to detect whether it has
the focus
> or not by checking the Screen.ActiveForm.ActiveControl for a match
to a
> control that the grid is a parent of. This was particularely useful
for the
> TIB_ComboBox control being embedded in the grid.
> I fixed a problem with the IBC_CustomMemo file where it needed to
> the dssPrepared state as a state in which there could be valid text
> displayed in the control. It was ignoring the text when in this
mode and
> that isn't correct behavior.
> I fixed the FieldByName(), ParamByName(), FindField() and FindParam
> routines so that if you pass in an identifier that doesn't need
> quotes, but you still included it in double quoted strings then it
> still match up the column names properly. Before passing in such an
> identifier resulted in a failed match.
> Claudio helped us out by fixing a bunch of Delphi 3 large integer
> issues where there was an infinite loop and some rounding issues
when using
> the comp type as a replacement for the int64 type. He also
optimized a filed
> trimming routine I had written a little inefficiently.
> I added the caRefreshKeys CommitAction type so that a developer can
tell a
> dataset to do a RefreshKeys instead of a full Refresh when a
> commits or does a rollback.
> I improved the connection and transaction components to deal with a
> connection better. For some reason there was an AV in the client
library if
> certain calls were made after the API returned an error code
signifying that
> the connection to the server had been lost.
> I needed to make some general corrections to the native IBO dataset
so that
> it would properly handle the cached record count figure when using
> tiConcurrency transaction isolation. It was not properly dealing
with the
> cases when records were being inserted into or deleted from a
dataset after
> a record count had already be processed. It will now work correctly
for all
> inserts and deletes and this is whether cached updates is on or off.
> PS. Don't forget to vote for IBO in the readers's choice awards.
See my
> web-site for details. Also, Italian web-site for IBO is now linked
up too...
> Regards,
> Jason Wharton
> CPS - Mesa AZ