Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
SSIS Integration Runtime in Azure Data Factory
Rangfolgeneinschränkungen verknüpfen ausführbare Dateien, Container und Tasks in Paketen in einer Ablaufsteuerung und geben Bedingungen an, die bestimmen, ob ausführbare Dateien ausgeführt werden. Ein ausführbares Element kann ein For Loop-Container, ein Foreach Loop-Container oder ein Sequence-Container, eine Task oder ein Ereignishandler sein. Ereignishandler verwenden auch Vorrangseinschränkungen, um ihre ausführbaren Elemente zu einem Kontrollfluss zu verknüpfen.
Eine Vorrangseinschränkung verknüpft zwei ausführbare Komponenten: die ausführbare Komponente mit Vorrang und die eingeschränkte ausführbare Komponente. Die ausführbare Datei der Rangfolge wird vor der eingeschränkten ausführbaren Datei ausgeführt, und das Ausführungsergebnis der ausführbaren Datei der Rangfolge kann bestimmen, ob die eingeschränkte ausführbare Datei ausgeführt wird. Im folgenden Diagramm werden zwei ausführbare Dateien dargestellt, die durch eine Rangfolgeneinschränkung verlinkt sind.
Bei einer linearen Ablaufsteuerung, also einer Ablaufsteuerung ohne Verzweigungen, bestimmen Rangfolgeneinschränkungen alleine die Reihenfolge, in der Tasks ausgeführt werden. Falls sich eine Ablaufsteuerung verzweigt, bestimmt die Integration Services-Runtime-Engine die Ausführungsreihenfolge für die Tasks und Container, die unmittelbar auf die Verzweigung folgen. Die Runtime-Engine bestimmt außerdem die Ausführungsreihenfolge für nicht verbundene Workflows in einer Ablaufsteuerung.
Die geschachtelte Containerarchitektur von Integration Services ermöglicht allen Containern (mit Ausnahme des Taskhostcontainers, der nur einen einzelnen Task kapselt), andere Container mit jeweils eigener Ablaufsteuerung einzuschließen. Der For-Schleifencontainer, der Foreach-Schleifencontainer und der Sequenzcontainer können mehrere Tasks und andere Container, die wiederum mehrere Tasks und Container enthalten können, einschließen. Angenommen, ein Paket mit einem Skripttask und einem Sequenzcontainer weist eine Rangfolgeneinschränkung auf, die den Skripttask und den Sequenzcontainer verlinkt. Der Sequenzcontainer schließt drei Skripttasks ein, und die Rangfolgeneinschränkungen verlinken die drei Skripttasks zu einer Ablaufsteuerung. Das folgende Diagramm zeigt die Vorrangseinschränkungen in einem Paket mit zwei Verschachtelungsebenen.
Das Paket befindet sich ganz oben in der SSIS -Containerhierarchie. Deshalb können mehrere Pakete nicht durch Rangfolgeneinschränkungen verlinkt werden. Sie können jedoch einem Paket einen Task Paket ausführen hinzufügen und indirekt ein anderes Paket mit der Ablaufsteuerung verlinken.
Es gibt folgende Möglichkeiten, um Rangfolgeneinschränkungen zu konfigurieren:
Geben Sie einen Auswertungsvorgang an. Die Rangfolgeneinschränkung verwendet einen Einschränkungswert und/oder einen Ausdruck, um zu bestimmen, ob die eingeschränkte ausführbare Datei ausgeführt wird.
Falls die Rangfolgeneinschränkung ein Ausführungsergebnis verwendet, können Sie als Ausführungsergebnis Erfolg, Fehler oder Beendigung angeben.
Falls die Rangfolgeneinschränkung ein Auswertungsergebnis verwendet, können Sie einen Ausdruck angeben, der zu einem booleschen Wert ausgewertet wird.
Geben Sie an, ob die Rangfolgeneinschränkung einzeln oder zusammen mit anderen Einschränkungen, die auf die eingeschränkte ausführbare Datei zutreffen, ausgewertet wird.
Auswertungsvorgänge
Integration Services stellt die folgenden Auswertungsvorgänge bereit:
Eine Einschränkung, die nur das Ausführungsergebnis des vorausgehenden ausführbaren Elements verwendet, um festzulegen, ob das eingeschränkte ausführbare Element ausgeführt wird. Das Ausführungsergebnis der ausführbaren Datei der Rangfolge kann Beendigung, Erfolg oder Fehler sein. Dies ist der Standardvorgang.
Ein Ausdruck, der ausgewertet wird, um zu bestimmen, ob die eingeschränkte ausführbare Datei ausgeführt wird. Wenn der Ausdruck als wahr ausgewertet wird, wird die eingeschränkte ausführbare Datei ausgeführt.
Einen Ausdruck und eine Einschränkung, die die Anforderungen von Ausführungsergebnissen der ausführbaren Datei der Rangfolge mit den zurückgegebenen Ergebnisse aus der Auswertung des Ausdrucks kombiniert.
Ein Ausdruck oder eine Bedingung, die entweder die Ausführungsergebnisse des vorausgehenden ausführbaren Elements oder die Rückgabewerte der Auswertung des Ausdrucks verwendet.
SSIS -Designer identifiziert mithilfe einer Farbcodierung den Typ der Rangfolgeneinschränkung. Die Success-Einschränkung ist grün, die Failure-Einschränkung ist rot und die Completion-Einschränkung ist blau. Zum Anzeigen von Beschriftungen im SSIS -Designer, die den Typ der Einschränkung anzeigen, müssen Sie die Barrierefreiheitsfunktionen des SSIS -Designers konfigurieren.
Der Ausdruck muss ein gültiger SSIS -Ausdruck sein, der Funktionen, Operatoren sowie Systemvariablen und benutzerdefinierte Variablen einschließen kann. Weitere Informationen finden Sie unter Integration Services-Ausdrücke (SSIS) und Integration Services-Variablen (SSIS).
Ausführungsergebnisse
Die Rangfolgeneinschränkung kann die folgenden Ausführungsergebnisse separat oder in Kombination mit einem Ausdruck verwenden.
Für die Beendigung muss die ausführbare Datei der Rangfolge ungeachtet des Ergebnisses abgeschlossen worden sein, damit die eingeschränkte ausführbare Datei ausgeführt wird.
Für Erfolg muss die ausführbare Datei der Rangfolge erfolgreich abgeschlossen worden sein, damit die eingeschränkte ausführbare Datei ausgeführt wird.
Für Fehler muss bei der ausführbaren Datei der Rangfolge ein Fehler auftreten, damit die eingeschränkte ausführbare Datei ausgeführt wird.
Hinweis
Nur Rangfolgeneinschränkungen, die Elemente derselben Precedence Constraint -Auflistung sind, können mit einer logischen AND-Bedingung gruppiert werden. Beispielsweise können Rangfolgeneinschränkungen aus zwei Foreach-Schleifencontainern nicht kombiniert werden.
Festlegen der Eigenschaften von Rangfolgeneinschränkungen mithilfe des Rangfolgeneinschränkungs-Editors
Öffnen Sie in SQL Server Data Tools (SSDT) das Integration Services-Projekt mit dem gewünschten Paket.
Doppelklicken Sie im Projektmappen-Explorerauf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung .
Doppelklicken Sie auf die Rangfolgeneinschränkung.
Das Dialogfeld Rangfolgeneinschränkungs-Editor wird geöffnet.
In der Dropdown-Liste für Evaluationsoperationen wählen Sie eine Evaluationsoperation aus.
Wählen Sie in der Dropdownliste Wert das Ausführungsergebnis der vorrangigen ausführbaren Datei aus.
Wenn der Auswertungsvorgang einen Ausdruck verwendet, geben Sie in das Feld Ausdruck einen Ausdruck ein, und klicken Sie auf Testen , um den Ausdruck auszuwerten.
Hinweis
Bei Variablennamen wird nach Groß-/Kleinschreibung unterschieden.
Falls mehrere Tasks oder Container mit der eingeschränkten ausführbaren Datei verbunden sind, wählen Sie Logisches AND aus, um anzugeben, dass die Ausführungsergebnisse aller vorherigen ausführbaren Dateien zu trueausgewertet werden müssen. Wählen Sie Logisches OR aus, um anzugeben, dass nur ein Ausführungsergebnis zu trueausgewertet werden muss.
Klicken Sie auf OK , um das Dialogfeld Rangfolgeneinschränkungs-Editorzu schließen.
Klicken Sie im Menü Datei auf Ausgewählte Elemente speichern , um das aktualisierte Paket zu speichern.
Rangfolgeneinschränkungs-Editor
Verwenden Sie das Dialogfeld Rangfolgeneinschränkungs-Editor , um Rangfolgeneinschränkungen zu konfigurieren.
Optionen
Auswertungsvorgang
Geben Sie den Auswertungsvorgang an, den die Rangfolgeneinschränkung verwendet. Folgende Vorgänge sind möglich: Einschränkung, Ausdruck, Ausdruck und Einschränkungund Ausdruck oder Einschränkung.
Wert
Geben Sie den Einschränkungswert an: Erfolg, Fehleroder Beendigung.
Hinweis
Die Rangfolgeneinschränkungslinie wird für Erfolggrün, für Fehlerhervorgehoben und für Beendigungblau dargestellt.
Ausdruck
Wenn Sie den Vorgang Ausdruck, Ausdruck und Einschränkungoder Ausdruck oder Einschränkungverwenden, geben Sie einen Ausdruck ein, oder starten Sie den Ausdrucks-Generator, um einen Ausdruck zu erstellen. Der Ausdruck muss zu einem booleschen Wert ausgewertet werden.
Test
Überprüfen Sie den Ausdruck.
Logisches AND
Wählen Sie diese Option aus, um festzulegen, dass mehrere Vorrangbedingungen für dieselbe ausführbare Komponente gemeinsam ausgewertet werden. Sämtliche Einschränkungen müssen mit Trueausgewertet werden.
Hinweis
Dieser Typ der Rangfolgeneinschränkung wird als durchgehende grüne, hervorgehobene oder blaue Linie dargestellt.
Logisches OR
Wählen Sie diese Option aus, um anzugeben, dass mehrere Vorrangseinschränkungen für dasselbe ausführbare Element zusammen ausgewertet werden. Mindestens eine Einschränkung muss mit Trueausgewertet werden.
Hinweis
Dieser Typ der Rangfolgeneinschränkung wird als gepunktete grüne, hervorgehobene oder blaue Linie dargestellt.
Festlegen der Eigenschaften von Rangfolgeneinschränkungen mithilfe des Eigenschaftenfensters
Öffnen Sie in SQL Server Data Tools (SSDT)das Integration Services -Projekt mit dem Paket, das Sie ändern möchten.
Doppelklicken Sie im Projektmappen-Explorerauf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung . Klicken Sie in der Entwurfsoberfläche der Registerkarte Ablaufsteuerung mit der rechten Maustaste auf Rangfolgeneinschränkung, und klicken Sie auf Eigenschaften. Ändern Sie im Fenster Eigenschaften die Eigenschaftswerte.
Legen Sie im Fenster Eigenschaften die folgenden Lese-/Schreibeigenschaften der Rangfolgeneinschränkung fest:
Lese/Schreibeigenschaft Konfigurationsvorgang BESCHREIBUNG Geben Sie eine Beschreibung ein. EvalOp Auswählen eines Auswertungsvorgangs. Wenn die Vorgänge Expression, ExpressionAndConstantoder ExpressionOrConstant ausgewählt sind, können Sie einen Ausdruck angeben. Ausdruck Wenn der Auswertungsvorgang einen Ausdruck enthält, geben Sie einen Ausdruck an. Der Ausdruck muss zu einem booleschen Wert ausgewertet werden. Weitere Informationen zur Ausdruckssprache finden Sie unter Ausdrücke in Integration Services (SSIS). LogicalAnd Legen Sie LogicalAnd fest, um anzugeben, ob die Rangfolgeneinschränkung zusammen mit anderen Rangfolgeneinschränkungen ausgewertet wird, wenn mehrere ausführbare Dateien vorausgehen und mit der eingeschränkten ausführbaren Datei verlinkt sind. Name Aktualisieren des Namens der Rangfolgeneinschränkung. ZeigeAnnotation Geben Sie den Typ der zu verwendenden Anmerkung ein. Wählen Sie Never aus, um Anmerkungen zu deaktivieren, AsNeeded , um Anmerkungen bei Bedarf zu aktivieren, ConstraintName , um automatisch den Wert mithilfe der Name-Eigenschaft anzumerken, ConstraintDescription , um automatisch den Wert mithilfe der Description-Eigenschaft anzumerken, und ConstraintOptions , um automatisch den Wert mithilfe der Eigenschaften Value und Expression anzumerken. Wert Wenn der in der EvalOP-Eigenschaft angegebene Auswertungsvorgang eine Einschränkung enthält, wählen Sie das Ausführungsergebnis des ausführbaren Programms aus, das die Einschränkung festlegt. Schließen Sie das Fenster Eigenschaften.
Klicken Sie im Menü Datei auf Ausgewählte Elemente speichern , um das aktualisierte Paket zu speichern.
Legen Sie den Wert einer Vorrangeinschränkung über das Kontextmenü fest
Öffnen Sie in SQL Server Data Tools (SSDT) das Integration Services-Projekt mit dem gewünschten Paket.
Doppelklicken Sie im Projektmappen-Explorerauf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung .
Klicken Sie auf der Entwurfsoberfläche der Registerkarte Ablaufsteuerung mit der rechten Maustaste auf die Rangfolgeneinschränkung, und klicken Sie dann auf Erfolg, Fehleroder Beendigung.
Klicken Sie im Menü Datei auf Ausgewählte Elemente speichern , um das aktualisierte Paket zu speichern.
Hinzufügen von Ausdrücken zu Rangfolgeneinschränkungen
Eine Vorrangseinschränkung kann einen Ausdruck verwenden, um die Einschränkung zwischen zwei ausführbaren Elementen zu definieren: dem Vorrang-Executable und dem eingeschränkten Executable. Bei den ausführbaren Dateien kann es sich um Tasks oder Container handeln. Der Ausdruck kann separat oder in Kombination mit dem Ausführungsergebnis der ausführbaren Datei der Rangfolge verwendet werden. Das Ausführungsergebnis einer ausführbaren Datei ist Erfolg oder Fehler. Wenn Sie das Ausführungsergebnis einer Rangfolgeneinschränkung konfigurieren, können Sie das Ausführungsergebnis auf Success, Failureoder Completionfestlegen. Für Success muss die vorgelagerte ausführbare Datei erfolgreich ausgeführt werden, für Failure muss die vorgelagerte ausführbare Datei fehlschlagen, und Completion gibt an, dass die abhängige ausführbare Datei unabhängig davon ausgeführt werden soll, ob die vorgelagerte Task erfolgreich ist oder fehlschlägt. Weitere Informationen finden Sie unter Rangfolgeneinschränkungen.
Der Ausdruck muss zu Wahr oder Falsch ausgewertet werden, und er muss ein gültiger Integration Services -Ausdruck sein. Für diesen Ausdruck sind Literale, Systemvariablen und benutzerdefinierte Variablen sowie die Funktionen und Operatoren zulässig, die von der SSIS -Ausdrucksgrammatik bereitgestellt werden. Beispielsweise verwendet der Ausdruck @Count == SQRT(144) + 10 die Count-Variable, die SQRT-Funktion und die Operatoren „equal“ (==) und „add“ (+) . Weitere Informationen finden Sie unter Integration Services-Ausdrücke (SSIS).
In der folgenden Abbildung sind Task A und Task B durch eine Rangfolgeneinschränkung miteinander verlinkt, die ein Ausführungsergebnis und einen Ausdruck verwendet. Der Einschränkungswert ist auf Success festgelegt, und der Ausdruck lautet @X >== @Z. Task B, der eingeschränkte Task, wird nur ausgeführt, wenn Task A erfolgreich abgeschlossen wird und der Wert der X -Variablen größer oder gleich dem Wert der Z-Variablen ist.
Ausführbare Dateien können auch mithilfe mehrerer Rangfolgeneinschränkungen miteinander verlinkt werden, die unterschiedliche Ausdrücke enthalten. Beispielsweise sind in der folgenden Abbildung Task B und Task C mit Task A durch Rangfolgeneinschränkungen verlinkt, die Ausführungsergebnisse und Ausdrücke verwenden. Beide Einschränkungswerte sind auf Success festgelegt. Eine Rangfolgeneinschränkung enthält den Ausdruck @X >== @Z, und die andere Rangfolgeneinschränkung den Ausdruck @X < @Z. In Abhängigkeit von den Werten der X -Variablen und der Z-Variablen wird Task C oder Task B ausgeführt.
Sie können einen Ausdruck mithilfe des Editors für Rangfolgeneinschränkungen im SSIS-Designer und des Eigenschaftenfensters hinzufügen oder ändern, die von SQL Server Data Tools (SSDT) bereitgestellt werden. Das Eigenschaftenfenster ermöglicht jedoch keine Überprüfung der Ausdruckssyntax.
Wenn eine Rangfolgeneinschränkung einen Ausdruck einschließt, wird auf der Entwurfsoberfläche der Registerkarte Ablaufsteuerung neben der Rangfolgeneinschränkung ein Symbol angezeigt, und die QuickInfo auf dem Symbol zeigt den Ausdruck an.
Hinzufügen eines Ausdrucks zu einer Vorrangbedingung
Öffnen Sie in SQL Server Data Tools (SSDT) das Integration Services-Projekt mit dem gewünschten Paket.
Doppelklicken Sie im Projektmappen-Explorerauf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung .
Doppelklicken Sie auf der Entwurfsoberfläche der Registerkarte Ablaufsteuerung auf die Rangfolgeneinschränkung. Das Dialogfeld Rangfolgeneinschränkungs-Editor wird geöffnet.
Wählen Sie Ausdruck, Ausdruck und Einschränkungoder Ausdruck oder Einschränkung in der Liste Auswertungsvorgang aus.
Geben Sie in das Textfeld Ausdruck einen Ausdruck ein, oder starten Sie den Ausdrucks-Generator, um einen Ausdruck zu erstellen.
Klicken Sie auf Testen, um die Ausdruckssyntax zu überprüfen.
Klicken Sie im Menü Datei auf Ausgewählte Elemente speichern , um das aktualisierte Paket zu speichern.
Ausführungswerte und Ausdrücke kombinieren
In der folgenden Tabelle werden die Auswirkung durch das Kombinieren einer Ausführungswerteinschränkung und eines Ausdrucks in einer Rangfolgeneinschränkung beschrieben.
| Auswertungsvorgang | Einschränkung wird ausgewertet zu | Ausdruck wird ausgewertet zu | Eingeschränkte ausführbare Datei wird ausgeführt |
|---|---|---|---|
| Zwang | Richtig | – | Richtig |
| Zwang | Falsch | – | Falsch |
| Ausdruck | – | Richtig | Richtig |
| Ausdruck | – | Falsch | Falsch |
| Einschränkung und Ausdruck | Richtig | Richtig | Richtig |
| Bedingung und Ausdruck | Richtig | Falsch | Falsch |
| Einschränkung und Ausdruck | Falsch | Richtig | Falsch |
| Bedingung und Ausdruck | Falsch | Falsch | Falsch |
| Beschränkung oder Ausdruck | Richtig | Richtig | Richtig |
| Bedingung oder Ausdruck | Richtig | Falsch | Richtig |
| Einschränkung oder Ausdruck | Falsch | Richtig | Richtig |
| Einschränkung oder Ausdruck | Falsch | Falsch | Falsch |
Komplexe Einschränkungsszenarien mit mehreren Rangfolgeneinschränkungen
Eine Vorrangbedingung verbindet zwei ausführbare Elemente: zwei Aufgaben, zwei Container oder jeweils eine Aufgabe und ein Container. Sie werden als die vorrangige ausführbare Datei und die eingeschränkte ausführbare Datei bezeichnet. Eine eingeschränkte ausführbare Datei kann mehrere Rangfolgeneinschränkungen haben. Weitere Informationen finden Sie unter Rangfolgeneinschränkungen.
Wenn Sie komplexe Einschränkungsszenarien durch Gruppieren von Einschränkungen zusammenfassen, können Sie eine komplexe Ablaufsteuerung in Paketen implementieren. Beispielsweise ist in der folgenden Abbildung der Task D mit dem Task A durch eine Success -Einschränkung verlinkt, der Task D ist mit dem Task B durch eine Failure -Einschränkung verlinkt, und der Task D ist mit dem Task C durch eine Success -Einschränkung verlinkt. Die Rangfolgeneinschränkungen zwischen Task D und Task A, zwischen Task D und Task B sowie zwischen Task D und Task C nehmen an einer logischen AND -Beziehung teil. Damit Task D ausgeführt wird, muss Task A erfolgreich ausgeführt werden, bei Task B muss ein Fehler auftreten, und Task C muss erfolgreich ausgeführt werden.
LogicalAnd-Eigenschaft
Falls ein Task oder ein Container mehrere Einschränkungen aufweist, gibt die LogicalAnd -Eigenschaft an, ob eine Rangfolgeneinschränkung einzeln oder zusammen mit anderen Einschränkungen ausgewertet wird.
Sie können die LogicalAnd -Eigenschaft mithilfe des Rangfolgeneinschränkungs-Editors im SSIS -Designer oder im Eigenschaftenfenster von SQL Server Data Tools (SSDT) festlegen.
Festlegen des Standardwerts für Rangfolgeneinschränkungen
Wenn Sie den SSIS -Designer zum ersten Mal verwenden, lautet der Standardwert einer Rangfolgeneinschränkung Erfolg. Führen Sie die folgenden Schritte aus, um für den SSIS -Designer einen anderen Standardwert für Rangfolgeneinschränkungen zu konfigurieren.
Öffnen Sie SQL Server Data Tools (SSDT).
Klicken Sie im Menü Extras auf Optionen.
Erweitern Sie im Dialogfeld Optionen den Ordner Business Intelligence-Designer , und erweitern Sie dann Integration Services-Designer.
Klicken Sie auf Automatisches Verbinden im Steuerungsfluss und wählen Sie Eine neue Form standardmäßig mit der ausgewählten Form verbinden.
Wählen Sie in der Dropdown-Liste entweder eine Fehlereinschränkung für die neue Form verwenden oder eine Abschlusseinschränkung für die neue Form verwenden.
Klicken Sie auf OK.
Erstellen einer Standard-Rangfolgeneinschränkung
Öffnen Sie in SQL Server Data Tools (SSDT) das Integration Services-Projekt mit dem gewünschten Paket.
Doppelklicken Sie im Projektmappen-Explorerauf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung .
Klicken Sie in der Entwurfsoberfläche der Registerkarte Ablaufsteuerung auf den Task oder Container, und ziehen Sie dessen Konnektor auf die ausführbare Datei, auf die Sie die Rangfolgeneinschränkung anwenden möchten.
Klicken Sie im Menü Datei auf Ausgewählte Elemente speichern , um das aktualisierte Paket zu speichern.