ScriptObjectModel.Transaction Property

Returns the transaction associated with the container of the Script task.

Namespace:  Microsoft.SqlServer.Dts.Tasks.ScriptTask
Assembly:  Microsoft.SqlServer.ScriptTask (in Microsoft.SqlServer.ScriptTask.dll)


Public ReadOnly Property Transaction As Object
Dim instance As ScriptObjectModel
Dim value As Object

value = instance.Transaction
public Object Transaction { get; }
property Object^ Transaction {
    Object^ get ();
member Transaction : Object
function get Transaction () : Object

Property Value

Type: System.Object
The transaction associated with the container of the Script task. This value can be nulla null reference (Nothing in Visual Basic).


Use the Transaction property of the Dts object in Script task code to reference the transaction associated with the container of the Script task. You may want to pass this transaction reference when calling the AcquireConnection method of a connection manager.


The following sample of code for use inside a Script task demonstrates how to access connection managers from within the Script task and to associate those connections with the active transaction by using the Transaction property. The sample assumes that you have created and configured an ADO.NET connection manager named Test ADO.NET Connection and a Flat File connection manager named Test Flat File Connection. Note that the ADO.NET connection manager returns a SqlConnection object that you can use immediately to connect to the data source. The Flat File connection manager, on the other hand, returns only a string that contains the path and filename. You must use methods from the System.IO namespace to open and work with the flat file.

Public Sub Main()

    Dim myADONETConnection As SqlClient.SqlConnection
    myADONETConnection = _
        DirectCast(Dts.Connections("Test ADO.NET Connection").AcquireConnection(Dts.Transaction), _
    MsgBox(myADONETConnection.ConnectionString, _
        MsgBoxStyle.Information, "ADO.NET Connection")

    Dim myFlatFileConnection As String
    myFlatFileConnection = _
        DirectCast(Dts.Connections("Test Flat File Connection").AcquireConnection(Dts.Transaction), _
    MsgBox(myFlatFileConnection, MsgBoxStyle.Information, "Flat File Connection")

    Dts.TaskResult = ScriptResults.Success

End Sub