Freigeben über


Erweitern einer Fehlerausgabe mit der Skriptkomponente

Standardmäßig enthalten die beiden zusätzlichen Spalten in einer Integration Services-Fehlerausgabe (ErrorCode und ErrorColumn) nur numerische Codes, die eine Fehlernummer darstellen, und die ID der Spalte, in der der Fehler auftrat. Diese numerischen Werte sind ohne die entsprechende Fehlerbeschreibung nur von begrenztem Nutzen.

In diesem Thema wird beschrieben, wie Sie mithilfe der Skriptkomponente den im Datenfluss vorhandenen Fehlerausgabedaten eine Spalte zur Fehlerbeschreibung hinzufügen. Im Beispiel wird die Fehlerbeschreibung einem bestimmten vordefinierten Integration Services-Fehlercode hinzugefügt. Dazu wird die GetErrorDescription-Methode der IDTSComponentMetaData100-Schnittstelle verwendet, die von der ComponentMetaData-Eigenschaft der Skriptkomponente bereitgestellt wird.

HinweisHinweis

Wenn Sie eine Komponente erstellen möchten, die Sie einfacher in mehreren Datenflusstasks und Paketen wiederverwenden können, empfiehlt es sich, den Code in diesem Skriptkomponentenbeispiel als Ausgangspunkt für eine benutzerdefinierte Datenflusskomponente zu verwenden. Weitere Informationen finden Sie unter Entwickeln einer benutzerdefinierten Datenflusskomponente.

Beispiel

In diesem Beispiel wird gezeigt, wie mit einer Skriptkomponente, die als Transformation konfiguriert ist, den im Datenfluss vorhandenen Fehlerausgabedaten eine Spalte zur Fehlerbeschreibung hinzugefügt wird.

Weitere Informationen zum Konfigurieren der Skriptkomponente für die Verwendung als Transformation im Datenfluss finden Sie unter Erstellen einer synchronen Transformation mit der Skriptkomponente und Erstellen einer asynchronen Transformation mit der Skriptkomponente.

So konfigurieren Sie dieses Skriptkomponentenbeispiel

  1. Konfigurieren Sie vor dem Erstellen der neuen Skriptkomponente eine Upstreamkomponente im Datenfluss, um Zeilen zur zugehörigen Fehlerausgabe umzuleiten, sobald ein Fehler auftritt oder Daten abgeschnitten werden. Möglicherweise möchten Sie zu Testzwecken eine Komponente so konfigurieren, dass auf jeden Fall Fehler auftreten – beispielsweise, indem Sie eine Transformation zum Suchen zwischen zwei Tabellen konfigurieren, und die Suche einen Fehler meldet.

  2. Fügen Sie der Datenfluss-Designeroberfläche eine neue Skriptkomponente hinzu, und konfigurieren Sie diese als Transformation.

  3. Verbinden Sie die Fehlerausgabe der Upstreamkomponente mit der neuen Skriptkomponente.

  4. Öffnen Sie den Transformations-Editor für Skripterstellung, und wählen Sie auf der Seite Skript für die ScriptLanguage-Eigenschaft die Skriptsprache aus.

  5. Klicken Sie auf Skript bearbeiten, um die MicrosoftVisual Studio Tools for Applications (VSTA)-IDE zu öffnen und den unten dargestellten Beispielcode einzufügen.

  6. Schließen Sie VSTA.

  7. Wählen Sie im Transformations-Editor für Skripterstellung auf der Seite Eingabespalten die Spalte ErrorCode aus.

  8. Fügen Sie auf der Seite Eingaben und Ausgaben eine neue Ausgabespalte des Typs String mit dem Namen ErrorDescription hinzu. Vergrößern Sie die Standardlänge der neuen Spalte auf 255, damit auch lange Meldungen angezeigt werden können.

  9. Schließen Sie den Transformations-Editor für Skripterstellung.

  10. Fügen Sie die Ausgabe der Skriptkomponente an ein geeignetes Ziel an. Ein Flatfileziel ist die einfachste Möglichkeit zur Konfiguration bei Ad-hoc-Tests.

  11. Führen Sie das Paket aus.

Public Class ScriptMain
    Inherits UserComponent
    Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer)

  Row.ErrorDescription = _
    Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode)

    End Sub
End Class
public class ScriptMain:
    UserComponent
{
    public override void Input0_ProcessInputRow(Input0Buffer Row)
    {

  Row.ErrorDescription = this.ComponentMetaData.GetErrorDescription(Row.ErrorCode);

    }
}
Integration Services (kleines Symbol) Bleiben Sie mit Integration Services auf dem neuesten Stand

Die neuesten Downloads, Artikel, Beispiele und Videos von Microsoft sowie ausgewählte Lösungen aus der Community finden Sie auf der Integration Services-Seite von MSDN oder TechNet:

Abonnieren Sie die auf der Seite verfügbaren RSS-Newsfeeds, um automatische Benachrichtigungen zu diesen Aktualisierungen zu erhalten.