Ottimizzazione di un output degli errori con il componente script

Per impostazione predefinita, le due colonne supplementari in un output degli errori di Integration Services, ovvero ErrorCode e ErrorColumn, contengono solo codici numerici che rappresentano un numero di errore, nonché l'ID della colonna in cui si è verificato l'errore. Questi valori numerici possono avere un'utilità limitata senza la descrizione dell'errore corrispondente.

In questo argomento viene descritto come aggiungere una colonna di descrizioni degli errori ai dati dell'output degli errori esistente nel flusso di dati tramite il componente Script. Nell'esempio viene aggiunta la descrizione dell'errore che corrisponde a un codice di errore specifico predefinito di Integration Services utilizzando il metodo GetErrorDescription dell'interfaccia IDTSComponentMetaData100, disponibile tramite la proprietà ComponentMetaData del componente script.

Nota

Se si desidera creare un componente da riutilizzare più facilmente con più attività Flusso di dati e più pacchetti, è possibile utilizzare il codice di questo esempio di componente script come punto iniziale per un componente del flusso di dati personalizzato. Per ulteriori informazioni, vedere Sviluppo di un componente del flusso di dati personalizzato.

Esempio

Nell'esempio illustrato viene utilizzato un componente script configurato come trasformazione per aggiungere una colonna di descrizione degli errori ai dati dell'output degli errori esistente nel flusso di dati.

Per ulteriori informazioni sulla configurazione del componente script per l'utilizzo come trasformazione nel flusso di dati, vedere Creazione di una trasformazione sincrona con il componente script e Creazione di una trasformazione asincrona con il componente script.

Per configurare l'esempio di componente script

  1. Prima di creare il nuovo componente script, configurare un componente a monte nel flusso di dati per reindirizzare righe all'output degli errori quando si verifica un errore o un troncamento. A scopo di test, è possibile configurare un componente in modo da assicurarsi che si verificheranno errori, ad esempio configurando una trasformazione Ricerca tra due tabelle in cui la ricerca avrà esito negativo.

  2. Aggiungere un nuovo componente script all'area di progettazione del flusso di dati e configurarlo come trasformazione.

  3. Connettere l'output degli errori del componente a monte a questo nuovo componente script.

  4. Aprire Editor trasformazione Script, quindi nella pagina Script selezionare il linguaggio di scripting per la proprietà ScriptLanguage.

  5. Fare clic su Modifica script per aprire l'IDE di Microsoft Visual Studio Tools for Applications (VSTA) e aggiungere il codice di esempio illustrato di seguito.

  6. Chiudere VSTA.

  7. Nella pagina Colonne di input dell'editor trasformazione Script selezionare la colonna ErrorCode.

  8. Nella pagina Input e output aggiungere una nuova colonna di output di tipo String denominata a ErrorDescription. Aumentare la lunghezza predefinita della nuova colonna fino a 255 per supportare messaggi lunghi.

  9. Chiudere Editor trasformazione Script.

  10. Connettere l'output del componente script a una destinazione appropriata. Le destinazioni file flat sono le più facili da configurare per test ad hoc.

  11. Eseguire il pacchetto.

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);

    }
}
Icona di Integration Services (piccola) Rimanere aggiornati con Integration Services

Per informazioni sui download, gli articoli, gli esempi e i video Microsoft più recenti, nonché sulle soluzioni selezionate dalla community, visitare la pagina Integration Services su MSDN o Technet:

Per ricevere notifica automatica su questi aggiornamenti, sottoscrivere i feed RSS disponibili nella pagina.