Subject Re: [IBO] IB_Transaction.Pause
Author guido.klapperich@t-online.de
> Pause and Resume are really just the transaction Refresh function
> broken into two pieces. This means that when Paused the transaction
> sits in a Pending status until resumed - and the Pending status is
> interpretted as Active.
>

This means, that Resume restarts the same transaction, that has been paused
or will pause stop the transaction and resume start a new one ? Could it be,
that this decides the WithRestart-Parameter of Resume or what else is it for
?

> I had not envisaged anyone calling pause while a transaction was not
> active and so I did not check/prevent the pause from occuring in that
> situation.
>

Why not ? When I just open a dataset, the transaction is tsInactive, but
nevertheless I want to pause it after some time.

>
> In regard to your earlier request for an example on how to manage OAT
> without using the TimeoutProps. Take a look at the TransactionPausing
> example in the tutorials, it shows a simplified version of what I use
> in my applications. It includes managing the user interface, so that
> you know whether a user is actively typing - in which case you dont
> want to pause a transaction while the user is in the middle of
> something.

I worked through your TransationPausing-example some days ago, but I didn't
like the idea of using the Application.OnMessage-Event. But I think, I will
give it a try. Some questions:
With (Msg.message >= WM_KEYFIRST) and (Msg.message <= WM_KEYLAST) you find
out, if the user has pressed any key ?
Is (Msg.message >= WM_MOUSEFIRST) and (Msg.message <= WM_MOUSELAST) only
true, when the user presses a mousebutton, or even when he moves the mouse ?

In the last row of the OnSessionTimer-Event you do a PostMessage( Handle,
WM_APP + 1, 0, 0 ); What is it for ?

Are you familar with the TimeoutProps of TIB_Transaction ?


Guido.