2016-08-03 19 views
-1

Ich habe 6 SSIS-Pakete. Alle Pakete dienen zum Laden von Dateien in die SQL-Server-Tabelle. Ich habe einen SQL-Server-Agent-Job erstellt, um den Prozess zum Laden von Flatfiles zu automatisieren und alle Packes in verschiedenen Schritten auszuführen. Wenn die erste Datei nicht in die SQL Server-Tabelle geladen werden kann, sollten alle nachfolgenden Schritte (Pakete) nicht ausgeführt werden. Kann ich eine Transaktion in SQL Server-Agent erstellen, um dies zu tun?Transaktion in SQL-Server-Agent Auftragsplan

Vielen Dank für Ihre Hilfe und Zeit.

Antwort

2

Ändern Sie Ihren Jobschritt für die Einstellung bei fehlgeschlagenem Auftrag auf "Jobmeldungsfehler beenden". Keine Notwendigkeit für Transaktionen überhaupt.

+0

Kann ich Ihnen noch eine Frage stellen? Angenommen, wenn die erste Datei (Schritt 1) ​​und die zweite Datei (Schritt 2) in SQL Server-Tabellen geladen werden, aber die 3. Datei() nicht geladen wurde. Also möchte ich alle Schritte zurücksetzen (ich meine Schritt 1 und Schritt 2). Wie kann ich das machen? – Anj

+0

Sie müssten die Art ändern, wie Ihre Pakete erstellt werden. Der Agent hat keine Kenntnis von Transaktionen, nur den Jobstatus. Der beste Weg wäre, ein Masterpaket zu haben, das eine Reihe von Kindpaketen (jeden Schritt) aufruft und sie alle in Sequenzcontainern mit der richtigen Transaktionseinstellung für jeden einzelnen hat. – TTeeple