Subject | Re: [IBO] EOF reported after next - missing one record. |
---|---|
Author | danialwidner |
Post date | 2002-07-17T17:16:13Z |
--- In IBObjects@y..., "Jason Wharton" <jwharton@i...> wrote:
with each commit? Will it fetchall and keep it cached until the
object is closed?
You have indicated I should make a code change to implement it at an
internal level at run time. Does it not do it if set at the outer
object level? IE I could group select a few hundred queries and set
the property for all of them instead of spending all week making
changes that might not even work.
As it involves several thousand queries in around 90 units, it
wasn't even tried. Many of these units have well over 200 queries on
them.
______
______
> Yes, that is what it attempts to do. But, there must be somethingin your
> setup that is confusing it.My boss wants to know exactly what that will do. Will it requery
>
> Did my recommendations resolve your issue?
with each commit? Will it fetchall and keep it cached until the
object is closed?
You have indicated I should make a code change to implement it at an
internal level at run time. Does it not do it if set at the outer
object level? IE I could group select a few hundred queries and set
the property for all of them instead of spending all week making
changes that might not even work.
As it involves several thousand queries in around 90 units, it
wasn't even tried. Many of these units have well over 200 queries on
them.
>then
> Thanks,
> Jason Wharton
> CPS - Mesa AZ
> http://www.ibobjects.com
>
>
> ----- Original Message -----
> From: "danialwidner" <dwidner@a...>
> To: <IBObjects@y...>
> Sent: Tuesday, July 16, 2002 1:49 PM
> Subject: Re: [IBO] EOF reported after next - missing one record.
>
>
> > Jason,
> > Would it be possible to get a bookmark before the commit and
> > return to it after the commit.your
> >
> >
> > --- In IBObjects@y..., "Jason Wharton" <jwharton@i...> wrote:
> > > Daniel,
> > >
> > > For PURE bde emulation you should switch the CommitAction of
> > query (atsee
> > > run-time using the InternalDataset property) to caFetchAll and
> > if thatBDE
> > > makes a difference. For many, this was a horrible problem the
> > imposedlot
> > > upon people because their query would run forever if it had a
> > of recordscompleted
> > > in it.
> > >
> > > > This is the scenario:
> > > >
> > > > IBOQuery.InternalDataset.CommitAction := caFetchAll;
> > > > IBOQuery.open; // record count = x (say 20 for instance)
> > > >
> > > > While not iboQuery.eof do
> > > > Begin
> > > > .....
> > > >
> > > >
> > >
> > > HTH,
> > > Jason Wharton
> > > CPS - Mesa AZ
> > > http://www.ibobjects.com
> > >
> > >
> > > ----- Original Message -----
> > > From: "danialwidner" <dwidner@a...>
> > > To: <IBObjects@y...>
> > > Sent: Wednesday, June 26, 2002 8:24 AM
> > > Subject: [IBO] EOF reported after next - missing one record.
> > >
> > >
> > > > I have isolated a problem discovered 2 weeks ago and reported
> > > > directly to Jason.
> > > >
> > > > This is the scenario:
> > > >
> > > >
> > > > IBOQuery.open; // record count = x (say 20 for instance)
> > > >
> > > > While not iboQuery.eof do
> > > > Begin
> > > > .....
> > > >
> > > >
> > > > DB.StartTransaction;
> > > >
> > > > UpdateQuery.execSQL; // update control record as
> > > >converted
> > > > DB.Commit;
> > > > // record count is now x-1 because it requeried.
> > > > // record 1 is NOT the record we came into the loop with
> > > > // It is now the original record # 2
> > > > iboQuery.Next; // we just skipped the ORIGIONAL record # 2
> > > >
> > > > End;
> > > > // record #2 never gets processed.
> > > >
> > > > I know that putting the IBOQuery used for control on it's own
> > > > transaction will fix the problem. However, this is BDE
> > > > code. It could take months to just add that item to all thefiles
> > > > and queries that need it. Standard BDE operation needs to beif
> > > > restored / implemented (IE don't refire IBOqueries on commit
> > thequery.
> > > > values in the query itself have not been altered. Whatever).
> > > >
> > > > Perhaps have independent internal transactions for each
> > Thendirty
> > > > from the DB StartTransaction action track a "Dirty" flag for
> > those
> > > > tranactions that are exececuted in some / any way before the
> > > > commit / rollback action. Then only commit / rollback the
> > > > transactions leaving the clean external loop transactionsalone.
> > > >_____________________________________________________________________
> > > >
> > > > Dan
> >
> >
> >
> >
>
______
> > IB Objects - direct, complete, custom connectivity to Firebird or_____________________________________________________________________
> InterBase
> > without the need for BDE, ODBC or any other layer.
> >
>
______
> > http://www.ibobjects.com - your IBO community resource for TechInfo
> papers,http://docs.yahoo.com/info/terms/
> > keyword-searchable FAQ, community code contributions and more !
> >
> > Your use of Yahoo! Groups is subject to
> >
> >
> >