All Cadcorp SIS API Methods

BeginDatasetTransaction Method

Description

Begin a transaction on a spatial database dataset opened with a dynamic connection type.

Syntax

Visual Basic
Public Function BeginDatasetTransaction( _
   ByVal nDataset As Long _
) As Integer

Parameters

nDataset
The serial number of the dataset for which a transaction is to be started

Remarks

  • Only a single transaction can be open at a time. If one has already been started, e.g. via the user interface, then BeginDatasetTransaction will fail.
  • All changes made to a dataset after a transaction has been started will be part of that transaction whether made through the user interface or the API.
  • Transactions can be opened only on spatial datasets held in Oracle Spatial or PostGIS and connected with a dynamic connection type.
  • Immediately upon a transaction receiving an edit, i.e. a change to the dataset, the underlying table is locked. This will cause any other sessions making changes to the table to wait for this transaction to be finished.
  • If a transaction is not committed or rolled-back, it will be rolled-back when the session ends. In this case, changes made in the transaction will be discarded even if the SIS user replies yes to the dialog asking if the SWD is to be saved.

Available GEO  OD SISpy

Group:

Example

Dim nDataset As Integer = GisGetInt(SIS_OT_OVERLAY, 1, "_nDataset&")
Dim SISError as Integer

sis.BeginDatasetTransaction(nDataset)
SISError = GisGetInt(SIS_OT_SYSTEM, 0, "_ExecError&")
If SISError <> SIS_ERROR_OK Then MsgBox("Unable to begin transaction")

This code begins a transaction on the dataset used in overlay 1. Check the error code to see if the GisBeginDatasetTransaction was successful.