Frage

ich ein SSIS-Paket haben, das auf einer Booleschen Variable abhängig, sollte entweder auf eine Skripttask oder eine E-Mail-Aufgabe gehen. (Hinweis: die Pfade kommen von ein Script Task)

Ich erinnere mich, in den alten dts Designern es eine Möglichkeit, dies über den Code zu tun. Was ist der richtige Weg, dies in SSIS zu erreichen?

War es hilfreich?

Lösung

  

Ist das nicht ein bedingtes Teilen ein Datenfluss   Aufgabe, die eine Reihe von Daten übernimmt und   schiebt sie in eine von zwei Richtungen   gemäß einer Eigenschaft der   Daten ???

Hoppla, das ist richtig. Ich fand dieser Blogeintrag die erklärt, wie die richtige Steuerungsablauf bedingte Verzweigungen auf boolesche Werte basieren zu tun.

Andere Tipps

Im Kontrollfluss, den grünen Pfeil an die E-Mail-Aufgabe ziehen, dann auf der rechten Maustaste, und Sie werden sehen, dass es von ‚Abgeschlossen‘ auf ‚Conditional‘ gesetzt, dann können Sie einen Ausdruck unter der Bedingung festgelegt. Der Pfeil wird dann blau. Sie sollten dann in der Lage sein, einen weiteren Pfeil auf das andere Skript zu ziehen und festgelegt, dass die bedingte.

Ich habe dieses Set-up oft, oft Sie wollen eine E-Mail, wenn eine bestimmte Bedingung zutrifft. Die Standard-Syntax für die bedingten Einschränkungen ist so etwas wie:

@[User::SendEmail] == True

Angenommen, Ihre Sendemail Variable ist ein boolean. Wenn Sie etwas anderes verwenden, baut nur einen Ausdruck, der entweder wahr oder falsch ausgewertet wird.

Denken Sie daran, das conditionals zu oder anstelle von AND gesetzt, sonst wird es nicht vollständig, wenn es beiden Routen nehmen!

Ein Conditional Split Aufgabe macht, was Sie wollen. Fügen Sie die Conditional Split Aufgabe, fügen Sie in einem zusätzlichen Ausgang (eine Standard-Ausgabe wird zur Verfügung gestellt), und die Bedingung für die Ausgabe eingestellt. bindet dann nur die Ausgänge (Standard und neu) zum Script und E-Mail-Aufgaben als angemessen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top