Link to home
Start Free TrialLog in
Avatar of jtrifts
jtriftsFlag for United Kingdom of Great Britain and Northern Ireland

asked on

Delayed CLEAR_BLOCK behaviour

Hi all,
Am having a strange forms behaviour that I'd appreciate some suggestions for.

Background:
Forms 6i, Oracle 8.1.7, Client-Server (UNix Server, Win2000 client)

I have two blocks, a search block (non-base table) and a results block (populated via dynamic WHERE clause).

The search is performed by entering search criteria and pressing the search button.

In the When-Button-Pressed trigger, the where clause is built, and the query executed.  The query works fine.

However if I have returned records in one query, and then perform another search and the query returns no data, we print an information message.

The problem is, that the CLEAR_BLOCK issued in the WBP doesn't seem to take effect (i.e. screen refresh) until after the message has been dismissed.

i.e.
1. query once
2. data returned
3. query again with bad data (so no records found)
4. get information message
5. block is cleared.

Step 5 here should be taking effect before step 4.  The only way this seems to actually happen is if a PAUSE; is issued prior to the message.

We've tried:
CLEAR_BLOCK;
CLEAR_BLOCK (NO_VALIDATE);
Adding GO_BLOCKs and GO_ITEMs.
POST; (its query only though, so this was useless).
EXECUTION STYLE changes
(We even have Pre-WBP functionality in our system, and this does not help either...)

Is there some sort of Oracle processing going on here that prevents screen refresh until the completion of the WBP trigger code?

Can you suggest ways of over-riding it?

Regards,
JT

PS This may not really be a hard question...but as I have the points...
ASKER CERTIFIED SOLUTION
Avatar of stemu2000
stemu2000
Flag of Japan image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of jtrifts

ASKER

Nice one Stefan.
It works a treat.
Thanks for your prompt and accurate answer.
Regards,
JT