ScriptObjectModel.Variables Property

Returns the Variables collection of existing variables defined in the package that contains the Script task.

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


Public ReadOnly Property Variables As Variables
Dim instance As ScriptObjectModel
Dim value As Variables

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

Property Value

Type: Microsoft.SqlServer.Dts.Runtime.Variables
The Variables collection of existing variables defined in the package that contains the Script task.


Use the Variables property of the Dts object in Script task code to access variables that are available through the ReadOnlyVariables and ReadWriteVariables properties of the task.


The following sample of code for use inside a Script task demonstrates how to access and use variables in a Script task to determine the path of package workflow. The sample assumes that you have created integer variables named CustomerCount and MaxRecordCount and added them to the ReadOnlyVariables collection in the Script Task Editor. Set values for both variables; experiment with setting values for CustomerCount that are both higher and lower than the value of MaxRecordCount. The CustomerCount variable contains the number of customer records to be imported. If its value is greater than the value of MaxRecordCount, the Script task reports failure. When a failure occurs because the MaxRecordCount threshhold has been exceeded, the error path of the workflow can implement any required clean-up code.

Public Sub Main()

    Dim customerCount As Integer
    Dim maxRecordCount As Integer

    If Dts.Variables.Contains("CustomerCount") = True AndAlso _
        Dts.Variables.Contains("MaxRecordCount") = True Then

        customerCount = _
            CType(Dts.Variables("CustomerCount").Value, Integer)
        maxRecordCount = _
            CType(Dts.Variables("MaxRecordCount").Value, Integer)

    End If

    If customerCount > maxRecordCount Then
            Dts.TaskResult = ScriptResults.Failure
            Dts.TaskResult = ScriptResults.Success
    End If

End Sub