Type
Control Command

Purpose
The tran off command is used to turn off the DataEase default transaction management and data locking facilities and switch DQL processing into tran off mode when accessing data in an SQL database.
DQL Procedures can be run in either tran on mode (the default mode) or tran off mode.
In tran on mode, DataEase treats any procedure that adds, modifies, or deletes data as a transaction (the procedure is processed as a single unit of work) as long as there are no explicit begin transaction and commit commands. When DataEase is processing a procedure in tran on mode, it automatically provides the necessary commands to lock and unlock data and ensure that each transaction is either fully completed or rolled back.
In tran off mode, DataEase processes each record as a separate transaction. No DQL actions are grouped together as a transaction and no multi-user data locking rules are enforced.

Syntax
tran off .

Usage
A DQL Procedure can contain any number of tran off and tran on commands. By using the tran on and tran off commands to turn the DataEase transaction management facilities on and off, you can link regular Processing procedures and Transaction Processing procedures together in the same Control procedure (see the example on the next page).
Once DataEase enters tran off mode, it remains in this mode until it reaches a tran on command or the end of the whole procedure.
Example
tran off .
record entry "RESERVATIONS" .
tran on .
run procedure "PRINT RESERVATIONS" .

This script tells DataEase: (1) Turn off the default transaction management and data locking facilities, (2) display the RESERVATIONS form so the user can enter new reservations, (3) when the user finishes entering records, turn the transaction management facilities back on, and (4) run the PRINT RESERVATIONS Processing procedure.

Note: Because it reduces the amount of data locking the server must perform, the tran off command can significantly improve the performance of a procedure. However, DataEase provides no concurrency control when processing records in tran off mode.
For this reason, we recommend that procedures that contain tran off commands should only be run when no one else is accessing the SQL tables referenced in the script.