Loading...
 

EndTXN

EndTXN

EndTXN

Stack
Stack Description
Stack(In) -
Stack(Out) -

Ends a transaction. At the end of a statement sequence, open transactions are automatically ended so that EndTXN is only required if you want to end the transaction earlier.

Attention! Only within an iterate loop with Iterate(UNSAFE) EndTXN may be called! Never in a loop with iterate only!
You can find detailed information here!

An open write transaction must be terminated with EndTXN to open a read transaction, otherwise the statement BeginTXN(READ) is skipped.

"EndTXN BeginTXN(READ)"

Implicit EndTXN

199867

The machine automatically ends a transaction at the following points:

  • Runtime is idle - All requests have been processed and all interface events have been processed. (Exception: Not within WaitOnInput)
    • Attention: The assumption that the runtime becomes idle when the current request is completed by an OpenWindow can sometimes be wrong, because a user could (if he is fast enough) trigger an interface event on this window before the window is completely built up, and thus this event would be executed seamlessly after the initialization of the window (and thus in the same transaction).
  • In TerminateApp before closing all application windows.
  • In TerminateApp after CLOSE has been processed for all application windows.
  • After the last TERMINATE handler is executed while the application is closed. (No matter how the application is closed)
  • A transaction started by the CX_TIMED_TRIGGER is closed again after the action has been executed.
  • After the message of a web service request has been processed. (This does not wait for IdleRuntime!)
  • If the event queue is empty, the ListView has requested new data by scrolling and has left a transaction open, then it is closed.
  • For an Attention(,EndTXN)
  • With a waiton inputwithout KEEP parameter
  • After executing the DROP or IS_DROPPABLE message
Related topics: