Erstellen einer dynamischen Betreff oder für Task Mail senden in SQL Server 2005 Integration Services

Einführung

Mit SQL Server Business Intelligence Development Studio, um ein Paket Microsoft SQL Server 2005 Integration Services (SSIS) zu erstellen. Beim Erstellen dieses Pakets können Sie einen Ausdruck für die Eigenschaft eines SSIS-Paket aktualisieren oder die Eigenschaft zur Laufzeit aufgefüllt erstellen. Wenn das SSIS-Paket einen Task Mail senden enthält, können Sie einen Ausdruck für die Subject -Eigenschaft und die MessageSource -Eigenschaft erstellen. Eigenschaftsausdruck Betreff können Sie den Betreff einer e-Mail-Nachricht dynamisch aktualisieren. MessageSource Eigenschaftsausdruck können Sie Variablen in der e-Mail-Nachricht wie Variablen dynamisch aktualisieren, die eine Zeilenanzahltransformation aufgefüllt werden.

Dieser Artikel beschreibt das Erstellen einer dynamischen Betreff oder für Task Mail senden.

Weitere Informationen

Nachfolgend ein Beispiel Eigenschaftsausdruck für die Subject -Eigenschaft in einen Task Mail senden.
"Package>>> " + @[System::PackageName] +" was executed at>>> " + (DT_WSTR, 40) @[System::StartTime] + " by user>>> " + @[System::UserName] + " on Machine>>> " + @[System::MachineName]
Wenn Sie diese Eigenschaft Beispielausdruck verwenden, wird der Betreff einer e-Mail-Nachricht dynamisch aktualisiert. Betreff enthält folgende Informationen:
  • Informationen
    In diesem Beispiel der Betreff der e-Mail-Nachricht enthält die "Paket >>>" Informationen.
  • Systemvariablen
    Die e-Mail-Nachricht enthält die folgenden Systemvariablen:
    • Paketname
      Der Paketname.
    • Startzeit
      Die Zeit, die das Paket ausgeführt wurde.
    • Benutzername
      Der Benutzer, der das Paket ausgeführt.
    • Computername
      Der Name des Computers, auf dem das Paket ausgeführt wurde.
Sie können weitere Informationen in dem Ausdruck, wie eine benutzerdefinierte Variable auch. Beispielsweise kann ein Datenflusstask Zeilenanzahltransformation vor dem Task Mail senden enthalten. (Zeilenanzahltransformation wird verwendet, um Zeilen zu zählen.) Zeilenanzahltransformation füllt eine benutzerdefinierte Variable mit dem Namen @myrowcount. Diese Variable speichert die Informationen im Datenfluss.

Um anzugeben, dass eine e-Mail-Nachricht gesendet werden, nur, wenn die Zeilenanzahl ist kleiner als ein bestimmter Wert bearbeiten Sie Kontrollfluss Vorrang Einschränkungen. Gehen Sie hierzu folgendermaßen vor:
  1. Klicken Sie in SQL Server Business Intelligence Development Studio Datenflusstaskund dann auf Vorrang Nebenbedingungen hinzufügen.
  2. Doppelklicken Sie auf die rangfolgeneinschränkung, die Sie gerade erstellt haben.
  3. Klicken Sie im Dialogfeld Priorität Einschränkung-Editor klicken Sie auf Ausdruck und Einschränkung
    Der Auswertungsvorgang.
  4. Geben Sie im Feld Ausdruck den folgenden Ausdruck ein:
    @myrowcount < 2
  5. Klicken Sie im Dialogfeld Priorität Einschränkung-Editor auf OK.
Wenn weniger als zwei Zeilen im Datenfluss verarbeitet wurden, wird eine e-Mail-Nachricht gesendet.

Darüber hinaus können Sie als Teil einer Fehlerbehandlungsroutine Task Mail senden. Beispielsweise möchten Sie eine e-Mail an Administratoren gesendet, wenn ein SSIS-Paket nicht ausgeführt wird. Zu diesem Zweck erstellen Sie OnError -Ereignishandler für das Paket zu, und fügen Sie einen Task Mail senden an den Ereignishandler. Erstellen Sie einen Thema Eigenschaftsausdruck, der die Zeit erfasst, die die Startzeit des Containers oder die Startzeit für den Ereignishandler aus der entsprechenden Systemvariablen das Paket ausgeführt wird. Beispielsweise erstellen Sie einen Ausdruck wie den folgenden.
"Error in the task: " +  @[System::SourceName] + "with the ID: " +  @[System::SourceID] + " has failed at: " + (DT_WSTR, 20) @[System::ContainerStartTime] + "."
Dieser Beispiel-Expression verwendet die folgenden Systemvariablen:
  • Startzeit
    Die Zeit, wann das Paket ausgeführt wurde.
  • ContainerStartTime
    Die Zeit, zu der der Container gestartet wurde.
  • EventHandlerStartTime
    Die Zeit, zu der der Ereignishandler gestartet ist.

Referenzen

Weitere Informationen finden Sie unter folgenden Themen in der Onlinedokumentation zu SQL Server 2005:
  • "Verwenden von Eigenschaftsausdrücken Pakete"
  • "Gewusst wie: erstellen einen Eigenschaftsausdruck"
  • "Erweiterte Integration Services Ausdrücke"
  • "Rangfolgeneinschränkungen"
  • "Rangfolgeneinschränkungen Tasks und Container festlegen"
  • "Integration Services Ereignishandler"
Eigenschaften

Artikelnummer: 906547 – Letzte Überarbeitung: 16.01.2017 – Revision: 1

Feedback