Subject Re: [IBO] Problem using locate
Author Lester Caine
John Costanzo wrote:

> I understand that you are saying BUT, this data is provided by the
> state. The lawyer who uses it wants to be able to find a specific
> person in the small file (which limits his view to persons who owe
> over a specific amount of money) but also see all matching record in
> the large file so they can see all monies owed. They don't want to
> wast time persuing someone who owes $500 but if they owe over $2000
> they might also owe $500, $300, etc. In which case they go after
> all monies owed.
>
> This is the point I am trying to make. It is my desire to convert
> all of my BDE/Paradox applications to IBO but I am not necessarily
> in control of what the client wants. Understanding that my
> knowledge of IBO and Client/Server program is limited I did a few
> test programs. In the BDE/Paradox test I wrote a small application
> with one non-databound grid, a table, and a button. The table is
> index on personsname and has 3 million + records. The button code
> locates then first record whose onwername is Rankley then simply
> loops, filling the grid, until the ownername is no longer Rankley.
> When the button is clicked the grid is filled almost instantly. I
> then wrote a IBO test application. One databound grid, 1 IBOQuery,
> 1 button. The SQL for the query is SELECT * FROM XXXXXXXX WHERE
> PERSONSNAME = RANKLEY ORDER ON OWNERNAME (Ownwername is a defined
> index). The Grid is linked to the query. The button code simply
> says query1.active := true. When I click the button the IBO cursor
> is displayed and the program goes to never never land for almost 2
> minutes before the grid is displayed. Unless I am doing something
> real wrong, this would mean that every time the user selected a name
> from the top grid there would be a lag of at least 2 minutes (I say
> at least because I selected Rankley because he only had a dozen or
> so records). What would happen if I selected SMITH?

Not sure where you are going wrong, but use IB_Query and ideally, do not
leave the '*', use a specific list. Then at least IBO can sort out real
SQL look-ups.

I run databases that are now building to millions of records. Some
things take a long time, but we can usually work out why and 'tidy' the
data. Most look up of detail information is by return, and scrolling
through just happens as you go.

--
Lester Caine - G8HFL
-----------------------------
L.S.Caine Electronic Services - http://home.lsces.co.uk
Model Engineers Digital Workshop -
http://home.lsces.co.uk/ModelEngineersDigitalWorkshop/
Treasurer - Firebird Foundation Inc. - http://www.firebirdsql.org/index.php