Ich habe einige SSIS-Sequenzcontainer, und wenn eine der darin enthaltenen Aufgaben fehlschlägt, möchte ich den Fluss zu einer SQL-Aufgabe leiten, die alles aufräumt, damit ich das Problem beheben und es ohne doppelte Daten erneut ausführen kann. Mein Problem ist, dass ich den Fluss nicht in die SQL-Aufgabe leiten kann, selbst wenn etwas in einem der Sequenzcontainer fehlschlägt. Scheint so, als ob dies das Standardverhalten sein sollte, aber es muss eine Einstellung geben, die ich vermisse. Ich habe mit der Einstellung FailParentOnFailure gespielt, aber das alles stoppt den Rest des Pakets. Ich würde ein Bild einfügen, um zu verstehen, was ich eingerichtet habe, aber denke, mein Ruf ist noch nicht gut genug. : P
Stellen Sie sicher, dass Sie in den Integritätsbedingungen auf Bearbeiten klicken und den letzten Teil für mehrere Integritätsbedingungen in OR ändern, so dass bei einem Fehler die Task ausgeführt wird. Andernfalls wird auf den Fehler gewartet.
Ohne weitere Details zu Ihren Sequenzcontainern ist es schwierig, sich über das Problem zu vergewissern.
Ich würde versuchen, die Systemvariable %code% Ihrer Container zu überprüfen. Wenn Sie eine Aufgabe haben, die fehlschlagen kann und Sie nicht möchten, dass Ihr gesamtes Paket beendet wird, müssen Sie einen der folgenden Schritte ausführen:
Ich würde ein paar Screenshots bereitstellen, aber dafür habe ich nicht genug Rep. Stattdessen hinterlasse ich Ihnen einige Links mit weiteren Informationen zu diesem Thema:
Ähnlich wie Ihre Frage: Ссылка
Detaillierte Informationen zur Ereignisausbreitung: Ссылка
Überprüfen Sie die Sequenzcontainereigenschaft, wenn FailPackageOnFailure = true, wird keine "failure precedence constraint" ausgelöst.
Ich denke in diesem Fall definitiv ein Fall, in dem ein Bild anderen geholfen hätte, meine Frage zu beantworten. Ich hatte 3 Sequenzcontainer, die alle auf den gleichen SQL-Task zeigten, wenn sie fehlschlugen. Ich wollte, dass die SQL-Task ausgeführt wird, wenn einer der Sequenzcontainer einen Fehler aufweist. Daher müssen die Rangfolgeneinschränkungen auf ein logisches ODER gesetzt werden, andernfalls würde sie niemals ausgeführt werden, wenn nicht alle 3 fehlgeschlagen sind. Es wurde in OR geändert und es funktionierte genau so, wie ich es wollte.