Share via


BeginTrans (MDStore Interface)

Note

  This feature will be removed in the next version of Microsoft SQL Server. Do not use this feature in new development work, and modify applications that currently use this feature as soon as possible.

The BeginTrans method of the MDStore interface initiates a transaction on the Analysis server database.

Applies To:clsDatabase

Syntax

object.BeginTrans    

Parameters

  • object
    The Database object to which changes are to be applied.

Remarks

Transactions group the processing of objects on the Analysis server by using the Process method for Database, Cube, Partition, or Dimension objects after executing the BeginTrans method. Processing actions within a transaction are not initiated on the server until you execute the CommitTrans method. You can use the Rollback method to void a transaction and leave the state of the objects on the server in the same condition they were in before the transaction was initiated. The processing of all objects on which you execute the Process method within the same transaction is completed as a single atomic operation. All of the specified processing is completed if the transaction completes successfully; none of it is completed if you roll back the transaction or if it terminates abnormally.

If you invoke a Process method on an object without first explicitly beginning a transaction using the BeginTrans method, Decision Support Objects (DSO) creates a single transaction for you so that the object you are processing is always processed inside a transaction.

Example

The following code example begins a transaction on the FoodMart 2000 database, processes the Sales and Budget cubes, and commits the transaction:

    Dim dsoServer As New DSO.Server
    Dim dsoDB As DSO.MDStore
    Dim dsoCube As DSO.MDStore

    ' Connect to the local Analysis server.
    dsoServer.Connect "LocalHost"
    
    ' Open the FoodMart 2000 database.
    Set dsoDB = dsoServer.MDStores("FoodMart 2000")
    
    ' Begin a transaction on the database.
    dsoDB.BeginTrans
    
    ' Create a reference to the Sales cube.
    Set dsoCube = dsoDB.MDStores("Sales")
    
    ' Process the cube, refreshing data.
    dsoCube.Process processRefreshData
    
    'Creae a reference to the Budget cube.
    Set dsoCube = dsoDB.MDStores("Budget")
    
    ' Process the cube completely.
    dsoCube.Process processFull
    
    ' Commit the transaction.
    dsoDB.CommitTrans