Subject Re: [IBO] Re: RecordCount (for IBO v4) (or sooner if you like)
Author Helen Borrie
At 11:33 AM 02-12-00 +0000, you wrote:

>It's hard to tell a boss that "I need to rewrite this application
>totaly in orden to get it work like a client/server application" when
>he needs to spend a server and for 400$ of sourcecode. He simply need
>to see things work. Then it would be reasonalble to shift towards
>client/server afterward telling the boss "now you have spend a server
>and for 400$ of sourcecode - would it be nice if we gets something
>of it?"
> >One can **advise** people to use good client/server techniques
> >but one can't MAKE them.

Good client/server techniques --->better performance, better handling of
multi-user situations, better protection of data integrity. It's up to you
to sell your boss the concept.

>It would be nice if someone with the knowleagde wrote a tutorial on
>the issue "convertion from BDE to IBO" - it would help a lot.

It's coming...but have you read all the sections in the current helpfile on
this topic?

>I find the trassition hard and I see this as a two step solution:
>1) Convert your BDE app to IBO

That's the easy part.

>2) Optimize you code to client/server

That is harder because there are some "giant leaps" to make conceptually
from the spreadsheet mindset of TTable and direct physical access to
"records" in a fileserver data store, to the "arms-length" access you have
to data that are physically inaccessible to the client and are expressed to
you in logical sets.

If there is any interest, I could post some long postings I made to the
delphi-db list on this subject.

>I think that Jason's idea of implementing .RecordCount is very useful
>especialy when you need to do things in small steps.
>So, Jason just release it, it would help many getting to the end
>- making true client/server applications.

I reiterate that it's a good thing to plan to replace code that uses
RecordCount for such things as looping through datasets or "bookmarking"
rows in controls. IBO has many other properties and methods that use
client/server friendly techniques to do those jobs.

It's also important to understand that RecordCount will never be accurate
because, at any given moment, there are rows waiting to be deleted or
waiting to be inserted, that are simply unavailable for inclusion in a
count. All of this energy going into emulating RecordCount as *closely* as
possible is only about compatibility for converted apps. It's not precise
under the BDE for client/server databases, either.



All for Open and Open for All
InterBase Developer Initiative ยท