Delayed BDE Exception behaviour?

I just witnessed a situation where a TStoredProc.Open throws a
EDBEngineError
but the application does not receive it for a few seconds ..

The app is a D2 application, using the BDE 5.0, and MS SQL Server 6.5.

The culprit is a stored procedure on the server that returns TWO results
sets in certain conditions.

When run in ISQL, you can clearly see the first select from a temp
table,
and then the final select.

I was always under the impression that the BDE will only see the FINAL
select,
and ignore all others..

The problem is data driven and only occurs on a few records containing
the condition that requires the stored procedure to create this temp
table# condition, and return the multiple
result sets.

So just wrap the TStoredProc.Open statement, and/or the calling method
in a try and except
block right? That's what I thought.

Problem is the delay ...   It throws the exception after the code has
executed lines further down stream.

I mention that I "witnessed" it because the above mentioned project is
not mine, and I did not write the SQL..

Has anyone ever experienced this behavior before?

Any help would be greatly appreciated!

Thanks

Rkr

--
                   \|||/
                   /'^'\
                  ( 0 0 )
--------------oOOO--(_)--OOOo--------------
. Reid Roman                              .
. Delphi Programmer / Analyst             .
. TVisualBasic:=class(None)               .
. May the Source be With You              .
-------------------------------------------
. Auto-By-Tel (http://www.autobytel.com)  .
. Irvine, CA U.S.A                        .
. E-Mail : rkroman (at) home (dot) com    .
-------------------------------------------