Deleting rows from the table will generally fix this
Seriously though, how many rows are there? If you're talking tens of thousands or more then then that amount of time is reasonable in a OW environment. If its only a few hundred rows then something is definitely wrong.
Which is it?
(BTW what is your system configuration??!!)
Larry Jones email@example.com
OneWorld B733.1, SP 11.3
HPUX 11, Oracle SE 8.1.6
SandBox: OneWorld XE
Another thought: if your consultant goes to the end of grid to verify that
there is a particular number of records meeting a criteria, then you are out
of luck. Try using an SQL via ODA, with "Select count(*) from
I'm kind of sorry that I do not know the solution for your exact problem (I
can't find this particular application in B7332), but since you've received
no answer, I decided that you can give it a try:
There are three main time consuming parts in the task of showing records in
a grid: first, database has to actually retrieve them, second, it has to
pass them over to client workstation and third, OneWorld has to cache in
grid buffer and display it (last task also includes processing event rules).
I would guestimate relative timings as 20%, 20% and 60% (10%, 10%, 80% on
large record sets)
1. You can easily reduce execution time by changing the sequence in which
OneWorld retrieves the data. First part will remain constant, but second and
third will dramatically reduce:
You can create a custom format for the grid (click Right button, select
Format -> New Format) and then change the sequence in which the records are
displayed (click Right button, select Grid -> Sequence and change A/D column
values to D [descending]). OneWorld will actually issue a different SQL to
the database and you'll see your last records as first. This will work
faster then Ctrl-End even if you don't have an index on the field by which
you sort, but you may consider adding an index if you need this type of
sorting more often.
2. As I already wrote, adding an index can speed up the first part.
3. For reasons unknown I have seen noticeable performance improvement if you
add a filter field, even if it does not reduce resulting record set (that
is, if you filter your records by a field which has the same value for all
of them, you'll get the same results faster). I'm talking here about the
time which passes between pressing find button and the time OneWorld starts
retrieving records (STOP button flashes at bottom right corner of the form).
It seems that OneWorld forces RDBMS to rebuild the access path...
4. Retrieving large record sets consumes buffer memory - if you run out of
RAM and Windows starts swapping, you get a severe performance hit.
A couple of obvious tips:
- prior to creating custom sort sequence, you may wish to create a format
called Standard, with standard sequencing - otherwise you'd have to create
it yourself later.
- If you don't create a format - you loose sequencing changes after logout
- You can create user overrides only for a particular user, but you can
easily copy them to other users - your SysAdmin should know how