2016-07-21 22 views
0

Ich habe eine OnError Event Handler in Visual Studio für SQL Server erstellt, die mir eine E-Mail senden, wenn das Paket während des Ladevorgangs fehlschlägt. Ich habe ein Master-Paket, das einige andere Pakete enthält und wenn eines davon fehlschlägt, bekomme ich eine E-Mail. Aber wenn die Verbindung in jedem Paket fehlschlägt, bekomme ich eine E-Mail von jedem Paket. Wie kann ich das ändern, so dass ich nur eine E-Mail bekomme, wenn die Verbindung in jedem Paket fehlschlägt?Kann ich meinen Sequenzcontainer validieren, bevor ich ihn ausführe? (Visual Studio)

Oder ist es möglich, die Verbindung zu testen, bevor die Pakete ausgeführt werden?

Antwort

0

Der Ereignishandler onError wird jedes Mal aufgerufen, wenn im Paket ein Fehler auftritt. Wenn Sie also nur eine E-Mail senden möchten, senden Sie die E-Mail nicht im Ereignishandler onError.

Stattdessen tun Sie etwas in der onError Handler wie:

  • -Update einen Zähler (Anzahl der Fehler)
  • Legen Sie einen Boolean Wahr (True für für „false "Fehler aufgetreten sind" dort Bauen sie waren keine Fehler ")
  • Ihre E-Mail-String, das Hinzufügen einer Nachricht für jeden Fehler, aber es nicht

senden Dann endlich in der Post ausführen Ereignis des Pakets (was o nly einmal angerufen werden), senden Sie Ihre E-Mail, wenn es irgendwelche Fehler gab.