Udostępnij za pośrednictwem


Metoda ScriptTask.Execute

Uruchamia zadanie skryptu.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Tasks.ScriptTask
Zestaw:  Microsoft.SqlServer.ScriptTask (w Microsoft.SqlServer.ScriptTask.dll)

Składnia

'Deklaracja
Public Overrides Function Execute ( _
    connections As Connections, _
    variableDispenser As VariableDispenser, _
    events As IDTSComponentEvents, _
    log As IDTSLogging, _
    transaction As Object _
) As DTSExecResult
'Użycie
Dim instance As ScriptTask
Dim connections As Connections
Dim variableDispenser As VariableDispenser
Dim events As IDTSComponentEvents
Dim log As IDTSLogging
Dim transaction As Object
Dim returnValue As DTSExecResult

returnValue = instance.Execute(connections, _
    variableDispenser, events, log, transaction)
public override DTSExecResult Execute(
    Connections connections,
    VariableDispenser variableDispenser,
    IDTSComponentEvents events,
    IDTSLogging log,
    Object transaction
)
public:
virtual DTSExecResult Execute(
    Connections^ connections, 
    VariableDispenser^ variableDispenser, 
    IDTSComponentEvents^ events, 
    IDTSLogging^ log, 
    Object^ transaction
) override
abstract Execute : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSComponentEvents * 
        log:IDTSLogging * 
        transaction:Object -> DTSExecResult 
override Execute : 
        connections:Connections * 
        variableDispenser:VariableDispenser * 
        events:IDTSComponentEvents * 
        log:IDTSLogging * 
        transaction:Object -> DTSExecResult 
public override function Execute(
    connections : Connections, 
    variableDispenser : VariableDispenser, 
    events : IDTSComponentEvents, 
    log : IDTSLogging, 
    transaction : Object
) : DTSExecResult

Parametry

  • transaction
    Typ: System.Object
    Obiekt transakcji kontener jest częścią.Środowiska wykonawczego zawiera kontener, na podstawie transakcji P:Microsoft.SqlServer.DTS.Runtime.DtsContainer.TransactionOption Właściwość.Wartość ta może być nullodwołanie o wartości null (Nothing w języku Visual Basic).

Wartość zwracana

Typ: Microsoft.SqlServer.Dts.Runtime.DTSExecResult
Wartość z DTSExecResult wyliczania.

Uwagi

Execute Metoda jest dziedziczona przez hosty zadań i innych obiektów z Executable abstrakcyjne klasy, poprzez DtsContainer klasy i umożliwia dziedziczenie obiektów do uruchomienia przez uruchomienie -czas silnika.Wykonywanie metoda dziedziczone przez poszczególne obiekty nie jest zwykle używany w kodzie i powinna wywołać Execute metoda, jeśli trzeba uruchamiać zadania lub pojemnikach w pakiet.Jednak Wykonywanie metoda jest dostępna w poszczególnych obiektach, jeśli znaleźć unikatowy okoliczność których wymagana jest.

Wykonywanie wywołania metoda sprawdzania poprawności metoda niejawnie, przed uruchomieniem pakiet.Wszystkie zadania w pakiet są przeglądane odpowiednie ustawienia podczas sprawdzania poprawności i wszystkich obiektów w pakiet rewidowane, włączając pakiet, kontenerów i innych składników w pakiet.

Jeśli nie ma żadnych problemów napotkanych w fazie sprawdzania poprawności, które mogłyby spowodować niepowodzenie wywołania obiektu pakiet pakiet Wykonywanie metoda dla każdego zadania i obiektów w pakiecie.

Przekazywanie nullodwołanie o wartości null (Nothing w języku Visual Basic) dla transaction parametr podczas TransactionOption właściwość jest false.Jeśli TransactionOption właściwość jest true, można przekazać null w transaction parametru, aby wskazać, że kontener obsługuje transakcje, ale nie uczestniczy.

Przykłady

Poniższy przykład kodu pokazuje, jak uruchomić pakiet, który zawiera BulkInsertTask po niektóre właściwości zadania są zestaw.Wstaw luzem zadanie jest tylko przykład ten przykładowy kod; można utworzyć zadanie.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask

namespace Microsoft.SqlServer.SSIS.Samples
{
    class Program
    {
        static void Main(string[] args)
        {
            Package p = new Package();
            p.InteractiveMode = true;
            p.OfflineMode = true;
            Executable exec1 = pkg.Executables.Add("STOCK:BulkInsertTask");
            TaskHost th = exec1 as TaskHost;

            // Set the CheckConstraints and DataFileType properties.           
            th.Properties["CheckConstraints"].SetValue(th, true);
            th.Properties["DataFileType"].SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native);
           
            // Run the package that contains the task.
            pkg.Execute();

            // Review the results of execution.
            if (taskH.ExecutionResult == DTSExecResult.Failure || taskH.ExecutionStatus == DTSExecStatus.Abend)
                Console.WriteLine("Task failed or abended");
            else
                Console.WriteLine("Task ran successfully");
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask
 
Namespace Microsoft.SqlServer.SSIS.Samples
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim p As Package =  New Package() 
            p.InteractiveMode = True
            p.OfflineMode = True
            Dim exec1 As Executable =  pkg.Executables.Add("STOCK:BulkInsertTask") 
            Dim th As TaskHost =  exec1 as TaskHost 
 
            ' Set the CheckConstraints and DataFileType properties.           
            th.Properties("CheckConstraints").SetValue(th, True)
            th.Properties("DataFileType").SetValue(th, DTSBulkInsert_DataFileType.DTSBulkInsert_DataFileType_Native)
 
            ' Run the package that contains the task.
            pkg.Execute()
 
            ' Review the results of execution.
            If taskH.ExecutionResult = DTSExecResult.Failure Or taskH.ExecutionStatus = DTSExecStatus.Abend Then
                Console.WriteLine("Task failed or abended")
            Else 
                Console.WriteLine("Task ran successfully")
            End If
        End Sub
    End Class
End Namespace