Subject Re: [IBO] open transaction
Author Helen Borrie
At 06:15 PM 5/01/2006 +0000, you wrote:
>IBO 4.5B D7
>
>I want to prompt the user to close a POSTed transaction if they
>leave it open too long without commiting.

Transactions are not posted. DML statements are posted within a transaction.


>My settings are like this:
>
> object Trans_Inventory: TIB_Transaction
> IB_Connection = DM.IBCon
> AnnounceFocus = True
> LockWait = True
> TimeoutProps.Attempt = 60
> TimeoutProps.PromptUser = 10
> TimeoutProps.PromptUserRetry = 30
> AfterCommit = Trans_InventoryAfterCommit
> AfterEnd = Trans_InventoryAfterEnd
> OnTimeoutPromptUser = Trans_InventoryTimeoutPromptUser
>
>I set the TimeoutProps low for testing.
>First, I Trans_Inventory.StartTransaction, then post some records.
>I think the user should be prompted after TimeOutProps.PromptUser 10
>seconds, but nothing happens. I have a simple message box in the
>OnTimeoutPromptUser event.
>
>What else do I need to set?

I'm not clear about what you want to achieve by this. You have the
transaction in WAIT resolution, which means that a DML statement request
could be hanging in an"unposted' state, waiting for another transaction to
finish. The application won't know whether the post is going to succeed or
fail until (or unless) it receives an exception. That can't happen until
the other transaction either commits or rolls back. TimeoutProps operate
on idle transactions. If your transaction is waiting for its request to be
executed then it's not idle.

Helen