Share via


ScriptTask Class

Defines the classes for the Script task, which lets developers write custom code to perform functions that are not available in the built-in tasks provided by Integration Services.

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

Syntax

'Declaration
<GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")> _
<ComVisibleAttribute(True)> _
Public Class ScriptTask _
    Inherits Task _
    Implements IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist
'Usage
Dim instance As ScriptTask
[GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")]
[ComVisibleAttribute(true)]
public class ScriptTask : Task, IDTSBreakpointSite, 
    IDTSSuspend, IDTSComponentPersist
[GuidAttribute(L"2EC4E475-058D-3590-8909-279F833D8B9C")]
[ComVisibleAttribute(true)]
public ref class ScriptTask : public Task, 
    IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist
[<GuidAttribute("2EC4E475-058D-3590-8909-279F833D8B9C")>]
[<ComVisibleAttribute(true)>]
type ScriptTask =  
    class
        inherit Task
        interface IDTSBreakpointSite
        interface IDTSSuspend
        interface IDTSComponentPersist
    end
public class ScriptTask extends Task implements IDTSBreakpointSite, IDTSSuspend, IDTSComponentPersist

Remarks

The ScriptTask class defines the Script task and handles the interaction of the Script task with the runtime and with Visual Studio for Applications.

For more information, see Script Task and Coding and Debugging the Script Task.

Examples

The following code sample, implemented in a console application, adds a ScriptTask to the package and displays the default values of some of its properties.

using System;
using Microsoft.SqlServer.Dts.Runtime;

namespace ScriptTaskCS
{
  class Program
  {
    static void Main(string[] args)
    {
      Package pkg = new Package();
      string newLine = System.Environment.NewLine;

      Executable exe = pkg.Executables.Add("STOCK:ScriptTask");
      TaskHost thTask = (TaskHost)exe;

      string taskInfo;
      taskInfo = 
        
        "Entry point: " + 
        thTask.Properties["EntryPoint"].GetValue(thTask) + newLine + 
        "Script Language: " + 
        thTask.Properties["ScriptLanguage"].GetValue(thTask) + newLine + 
        "ReadOnlyVariables: " + 
        thTask.Properties["ReadOnlyVariables"].GetValue(thTask) + newLine + 
        "ReadWriteVariables: " + 
        thTask.Properties["ReadWriteVariables"].GetValue(thTask);

      Console.WriteLine(taskInfo);
      Console.Read();
    }
  }
}
Imports Microsoft.SqlServer.Dts.Runtime

Module Module1

  Sub Main()

    Dim pkg As New Package
    Dim newLine As String = System.Environment.NewLine

    Dim exe As Executable = pkg.Executables.Add("STOCK:ScriptTask")
    Dim thTask As TaskHost = CType(exe, TaskHost)

    Dim taskInfo As String
    taskInfo = 
      
      "Entry point: " & _
      thTask.Properties("EntryPoint").GetValue(thTask) & newLine & _
      "Script Language: " & _
      thTask.Properties("ScriptLanguage").GetValue(thTask) & newLine & _
      "ReadOnlyVariables: " & _
      thTask.Properties("ReadOnlyVariables").GetValue(thTask) & newLine & _
      "ReadWriteVariables: " & _
      thTask.Properties("ReadWriteVariables").GetValue(thTask)

    Console.WriteLine(taskInfo)
    Console.Read()

  End Sub

End Module

Inheritance Hierarchy

System.Object
  Microsoft.SqlServer.Dts.Runtime.DtsObject
    Microsoft.SqlServer.Dts.Runtime.Task
      Microsoft.SqlServer.Dts.Tasks.ScriptTask.ScriptTask

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.