Freigeben über


Task Prozess ausführen

Gilt für: SQL Server SSIS Integration Runtime in Azure Data Factory

Der Task „Prozess ausführen“ führt eine Anwendung oder Batchdatei als Teil eines SQL Server Integration Services-Paketworkflows aus. Obwohl Sie mithilfe des Tasks Prozess ausführen alle Standardanwendungen öffnen können, wie z. B. Microsoft Excel oder Microsoft Word, werden Sie der Regel damit Geschäftsanwendungen oder Batchdateien für eine Datenquelle ausführen. Beispielsweise können Sie mit dem Task 'Prozess ausführen' eine komprimierte Textdatei expandieren. Anschließend kann das Paket die Textdatei als Datenquelle für den Datenfluss im Paket verwenden. Sie können z. B. mit einem Task Prozess ausführen auch eine benutzerdefinierte Visual Basic-Anwendung ausführen, die einen täglichen Umsatzbericht generiert. Anschließend können Sie den Bericht an einen "Mail senden"'-Task anfügen und an eine Verteilerliste weiterleiten.

Integration Services schließt weitere Tasks ein, die Workflowvorgänge ausführen, wie z. B. das Ausführen von Paketen. Weitere Informationen finden Sie unter Execute Package Task.

Verfügbare benutzerdefinierte Protokolleinträge für den Task „Prozess ausführen“

In der folgenden Tabelle werden die benutzerdefinierten Protokolleinträge für den Task Prozess ausführen aufgelistet. Weitere Informationen finden Sie unter Integration Services-Protokollierung (SSIS).

Protokolleintrag BESCHREIBUNG
ExecuteProcessExecutingProcess Enthält Informationen zu dem Prozess, für dessen Ausführung der Task konfiguriert ist.

Es werden zwei Protokolleinträge geschrieben. Der eine Protokolleintrag enthält Informationen über den Namen und Speicherort der vom Task ausgeführten ausführbaren Datei, im anderen Eintrag wird das Beenden der ausführbaren Datei erfasst.
ExecuteProcessVariableRouting Enthält Informationen darüber, welche Variablen an die Eingabe und an die Ausgaben der ausführbaren Datei geleitet werden. Es werden Protokolleinträge für stdin (für die Eingabe), für stdout (für die Ausgabe) und für stderr (für die Fehlerausgabe) geschrieben.

Konfiguration des Tasks „Prozess ausführen“

Sie können Eigenschaften mit dem SSIS -Designer oder programmgesteuert festlegen.

Weitere Informationen zum Einrichten dieser Eigenschaften in SSIS Designer finden Sie unter Hinzufügen oder Löschen eines Tasks oder Containers in einer Ablaufsteuerung.

Eigenschafteneinstellungen

Wenn der Task "Prozess ausführen" eine benutzerdefinierte Anwendung ausführt, stellt der Task mithilfe einer der beiden folgenden Methoden eine Eingabe für die Anwendung bereit:

  • Eine Variable, die Sie in der Eigenschaftseinstellung StandardInputVariable angeben. Weitere Informationen zu Variablen finden Sie unter Integration Services-Variablen (SSIS) und Integration Services-Variablen (SSIS).

  • Ein Argument, das Sie in der Eigenschaftseinstellung Argumente angeben. (Wenn der Task beispielsweise ein Dokument in Word öffnet, kann mit dem Argument die DOC-Datei angegeben werden.)

Um mehrere Argumente an eine benutzerdefinierte Anwendung in einem einzigen 'Prozess ausführen'-Task zu übergeben, verwenden Sie Leerzeichen, um die Argumente voneinander zu trennen. Ein Argument darf kein Leerzeichen enthalten; sonst wird die Aufgabe nicht ausgeführt. Sie können einen Ausdruck verwenden, um einen Variablenwert als Argument zu übergeben. Im folgenden Beispiel übergibt der Ausdruck zwei Variablenwerte als Argumente und verwendet ein Leerzeichen, um die Argumente voneinander zu trennen:

@variable1 + " " + @variable2

Sie können einen Ausdruck verwenden, um verschiedene Eigenschaften des Tasks 'Prozess ausführen' festzulegen.

Wenn Sie zum Konfigurieren des Tasks Prozess ausführen für Eingaben die Eigenschaft StandardInputVariable verwenden, rufen Sie zum Lesen der Eingabe die Console.ReadLine -Methode der Anwendung auf. Weitere Informationen finden Sie unter Methode Console.ReadLine.

Wenn Sie zum Konfigurieren des Tasks Prozess ausführen für Eingaben die Eigenschaft Argumente verwenden, führen Sie zum Abrufen der Argumente einen der folgenden Schritte aus:

  • Wenn Sie Microsoft Visual Basic verwenden, um die Anwendung zu schreiben, legen Sie die My.Application.CommandLineArgs -Eigenschaft fest. Im folgenden Beispiel ruft die My.Application.CommandLineArgs -Eigenschaft zwei Argumente ab:

    Dim variable1 As String = My.Application.CommandLineArgs.Item(0)
    Dim variable2 As String = My.Application.CommandLineArgs.Item(1)
    

    Weitere Informationen finden Sie unter Eigenschaft ConsoleApplicationBase.CommandLineArgs.

  • Verwenden Sie die Main-Methode, wenn Sie die Anwendung mit Microsoft Visual C# schreiben.

    Weitere Informationen finden Sie unter Befehlszeilenargumente (C#-Programmierhandbuch).

Der Task 'Prozess ausführen' enthält außerdem die Eigenschaften StandardOutputVariable und StandardErrorVariable zum Angeben der Variablen, die jeweils die Standardausgabe und die Fehlerausgabe der Anwendung in Anspruch nehmen.

Darüber hinaus können Sie für den Task 'Prozess ausführen' ein Arbeitsverzeichnis, einen Timeoutzeitraum oder einen Wert zum Anzeigen der erfolgreichen Ausführung der ausführbaren Datei konfigurieren. Für den Task kann außerdem konfiguriert werden, dass ein Fehler gemeldet wird, falls der Rückgabecode der ausführbaren Datei nicht mit dem Wert übereinstimmt, der für die erfolgreiche Ausführung steht, oder falls die ausführbare Datei im angegebenen Speicherort nicht gefunden wird.

Programmgesteuerte Konfiguration des Tasks „Prozess ausführen“

Weitere Informationen zum programmgesteuerten Festlegen dieser Eigenschaften finden Sie unter ExecuteProcess.

Editor für den Task „Prozess ausführen“ (Seite Allgemein)

Auf der Seite Allgemein des Dialogfelds Editor für den Task „Prozess ausführen“ können Sie den Task „Prozess ausführen“ benennen und beschreiben.

Tastatur

Name
Geben Sie einen eindeutigen Namen für den Task 'Prozess ausführen' an. Dieser Name wird im Tasksymbol als Bezeichnung verwendet.

Hinweis

Tasknamen müssen innerhalb eines Pakets eindeutig sein.

Beschreibung
Geben Sie eine Beschreibung des Tasks 'Prozess ausführen' ein.

Editor für den Task „Prozess ausführen“ (Seite Verarbeiten)

Auf der Seite Verarbeiten des Dialogfelds Editor für den Task 'Prozess ausführen' können Sie die Optionen konfigurieren, die den Prozess ausführen. Zu den Optionen gehören der Name der ausführbaren Datei, der Speicherort dieser Datei, die Argumente der Eingabeaufforderung und die Variablen für die Ein- und Ausgabe.

Tastatur

RequireFullFileName
Geben Sie an, ob der Task fehlschlagen soll, wenn die ausführbare Datei am angegebenen Speicherort nicht gefunden wird.

Ausführbare Datei
Geben Sie den Namen der ausführbaren Datei ein.

Argumente
Geben Sie Argumente für die Eingabeaufforderung an.

WorkingDirectory
Geben Sie den Pfad zu dem Ordner ein, in dem die ausführbare Datei enthalten ist, oder wählen Sie die Schaltfläche zum Durchsuchen (...) aus und suchen Sie den Ordner.

StandardInputVariable
Wählen Sie eine Variable für die Bereitstellung der Eingabe zum Prozess oder <Neue Variable> aus, um eine neue Variable zu erstellen:

Verwandte Themen: Integration Services-Variablen (SSIS)

StandardOutputVariable
Wählen Sie eine Variable für die Erfassung der Prozessausgabe oder <Neue Variable> aus, um eine neue Variable zu erstellen.

StandardErrorVariable
Wählen Sie eine Variable für die Erfassung der Fehlerausgabe des Prozesses oder <Neue Variable> aus, um eine neue Variable zu erstellen.

FailTaskIfReturnCodeIsNotSuccessValue
Geben Sie an, ob beim Task ein Fehler auftritt, wenn der Prozessexitcode von dem unter SuccessValueangegebenen Wert abweicht.

SuccessValue
Geben Sie den Wert an, der von der ausführbaren Datei zurückgegeben wird, um einen Erfolg zu melden. Standardmäßig ist dieser Wert auf 0 festgelegt.

TimeOut
Geben Sie die Anzahl von Sekunden an, die der Prozess ausgeführt werden kann. Durch den Wert 0 wird angezeigt, dass kein Timeoutwert verwendet wird und der Prozess so lange ausgeführt wird, bis er entweder abgeschlossen ist oder ein Fehler auftritt.

TerminateProcessAfterTimeOut
Geben Sie an, ob das Ende des Prozesses nach Ablauf des durch die Option TimeOut angegebenen Timeoutzeitraumes erzwungen wird. Diese Option ist nur verfügbar, wenn der Wert unter TimeOut nicht 0 ist.

WindowStyle
Geben Sie die Fensteranordnung an, in der der Prozess ausgeführt wird.