Subject Re: [IBO] Re: Test sub-release posted to all sites.
Author Jason Wharton
I said test because I have not certified it yet. I was doing development a
little late at night and hadn't had time to run through all of my test
suites.

Since I only performed bug fixing I am less concerned but I always like to
make sure the rudimentary things are in solid working order before I declare
something as production.

I will run those tests today and remove he test indicator if all checks out
to be 100%.

Thanks,
Jason Wharton
CPS - Mesa AZ
http://www.ibobjects.com


----- Original Message -----
From: <kamen_lai@...>
To: <IBObjects@egroups.com>
Sent: Sunday, December 03, 2000 7:06 PM
Subject: [IBO] 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 IBObjects@egroups.com, "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
> total
> > 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
> NOT NULL
> > columns in the source and being directly bound to a column that is
> NULLable.
> > This is now resolved.
> >
> > I revisited the TIBODataset.RecordCount property. The way I have
> implemented
> > 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
> is
> > 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
> the
> > number of records in the buffer. I also added in a function called
> > RecordCountQuery that will return the exact record count in all
> cases.
> >
> > The above changes may affect the behavior of TDBGrid controls
> vertical
> > 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
> the
> > 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
> master
> > 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
> dataset
> > when using a master-detail relationship when inserting into the
> detail
> > dataset and the values for the target columns already have values
> plugged
> > into them. I had a developer complain that it should not overwrite
> the
> > values he has supplied.
> >
> > The TIBODataset class was not always handling the boolean column
> definitions
> > if there was one that was configured using the default and then
> another
> > 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
> when
> > 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
> consider
> > the dssPrepared state as a state in which there could be valid text
> being
> > 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
> double
> > quotes, but you still included it in double quoted strings then it
> will
> > 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
> (comp)
> > 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
> transaction
> > commits or does a rollback.
> >
> > I improved the connection and transaction components to deal with a
> lost
> > 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
> the
> > 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
> > http://www.ibobjects.com
>
>
>
>
>