SSIS-Datenfluss-Skript-task-Fehlerbehandlung

Ich habe einen script task, das Sie zum ausführen der Transformationen in der Mitte von einem SSIS-Datenfluss. Wenn das Skript fehlschlägt (sagen, es versucht zu konvertieren, alpha-numeric -) ich brauche es halt mit einer "failed" - status und wieder zurück in das Haupt-Paket und nutzen Sie die Datenfluss-Task Ereignis-Handler OnError zu würdevoll beenden.

Im moment finde ich, dass das Skript Aufgabe in den dataflow gibt eine .net-Fehler-popup, die ich habe, dann klar. Ich habe versucht einen Try Catch um den code scheint das zu stoppen debug-Fenster erscheinen, aber ich kann nicht scheinen, um es zu beenden Sie das Skript mit einem "failed-status', die bewirken, dass das Paket zu scheitern. Der Dts.TaskResult = Dts.Ergebnisse.Fehler scheint nicht gültig zu sein in der Datenfluss-Aufgaben. Im moment versuche ich, diese:

    Catch e As System.Exception
        Me.ComponentMetaData.FireError(-1, "", "Error: ", e.Message, 1, True)
        While Not e.InnerException Is Nothing
            e = e.InnerException
            Me.ComponentMetaData.FireError(-1, "", "InnerException: ", e.Message, 1, True)
        End While
        Exit Sub
    End Try

... aber all dies tut, ist, überspringen Sie die schlechten Zeilen. Der Datenfluss geht weiter. Das problem ist daran, es zu beenden, als gescheitert', so dass der error-handler onError-Ereignis im Paket ausgelöst wird.

Anregungen dankbar angenommen.
Glenn

BTW, wenn es in einem Datenfluss, dann ist es ein Script-Komponente, nicht einen Skript-Task.

InformationsquelleAutor Glenn M | 2009-09-29

Schreibe einen Kommentar