Come scrivere informazioni nel registro eventi dell'applicazione mediante un'attività di Script in un pacchetto di SQL Server 2005 Integration Services

Riepilogo

Quando si utilizza Microsoft SQL Server Business Intelligence Development Studio per creare un pacchetto di Microsoft SQL Server 2005 Integration Services (SSIS), è possibile includere un'attività Script nel pacchetto SSIS per eseguire un'attività.

Ad esempio, l'attività può scrivere un insieme di informazioni sulle variabili nel registro eventi applicazioni di Windows. È possibile creare un pacchetto SSIS contenente un'attività flusso di dati. Questa attività del flusso di dati include una trasformazione Conteggio righe. È possibile utilizzare un'attività Script per scrivere i dati che erano stati inseriti mediante la trasformazione Conteggio righe nel registro eventi applicazioni di Windows.

In questo articolo viene descritto come utilizzare l'attività Script per scrivere le informazioni nel registro eventi applicazioni di Windows.

Ulteriori informazioni

In questo esempio si presuppone che si siano creati i seguenti elementi nel pacchetto SSIS:

  • Attività flusso di dati

  • Un'attività Script

  • Un connettore da attività flusso di dati per l'attività Script

  • Nell'attività del flusso di dati, creazione di una trasformazione Conteggio righe nel flusso di dati.

Quando si esegue il pacchetto, la trasformazione Conteggio righe restituisce i dati di conteggio delle righe che si desidera scrivere nel registro eventi applicazioni di Windows.

A tale scopo, attenersi alla seguente procedura in SQL Server Business Intelligence Development Studio:

  1. Quando è attiva la scheda Flusso di controllo , pulsante destro del mouse nell'area di progettazione e quindi fare clic su variabili. Nel riquadro di sinistra viene visualizzata la finestra di variabili .

  2. Nella finestra delle variabili , fare clic su Aggiungi variabile per aggiungere una variabile denominata mycount. Per impostazione predefinita, il tipo di dati della nuova variabile mycount è Int32.

    Nota: Riferimenti a nomi di variabili sono maiuscole/minuscole.

  3. Fare doppio clic su attività Flusso di dati . Il
    Verrà visualizzata la scheda Flusso di dati .

  4. Fare doppio clic la trasformazione Conteggio righe . Verrà visualizzata la finestra di dialogo Editor avanzato .

  5. Impostare il valore della proprietà VariableName
    mycount.

  6. Fare clic sulla scheda Flusso di controllo e quindi fare doppio clic sull' Attività Script. Verrà visualizzata la finestra di dialogo Editor attività Script .

  7. Fare clic sull'elemento di Script nel riquadro di sinistra e quindi modificare il valore della proprietà ReadOnlyVariables per il seguente valore:

    PackageName,StartTime,ExecutionInstanceGUID,mycount

    Nota: Gli elementi PackageName StartTime ed ExecutionInstanceGUID sono variabili di sistema. Queste variabili di sistema vengono utilizzate per scrivere le informazioni sul pacchetto nel registro eventi applicazioni di Windows.

  8. Nel
    Finestra di dialogo Editor attività script fare clic su Progetta Script.

  9. Assicurarsi che gli spazi dei nomi seguenti sono inclusi nel codice prima di qualunque altra dichiarazione:

    Imports System
    Imports System.Data
    Imports System.Math
    Imports System.Diagnostics
    Imports Microsoft.SqlServer.Dts.Runtime
  10. Quando viene visualizzata una nuova finestra di Microsoft Visual Studio for Applications , sostituire il codice nel metodo Main () nell'esempio di codice seguente.

    Dim varMyCount As Variable = Dts.Variables("mycount") '
    Dim varPackageName As Variable = Dts.Variables("PackageName")
    Dim varStartTime As Variable = Dts.Variables("StartTime")
    Dim varInstanceID As Variable = Dts.Variables("ExecutionInstanceGUID")
    Dim PackageDuration As Long

    '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    ' Event log needs
    '>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
    Dim sSource As String
    Dim sLog As String
    Dim sEventMessage As String
    Dim sMachine As String
    '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

    PackageDuration = DateDiff("s", varStartTime.Value, Now())

    sSource = "RowCountReporting from SSIS"

    ' We need the message posted to the Application event log.

    sLog = "Application"
    sEventMessage = "Rows Processed: " & Chr(10) _
    & " case Rows:" + varMyCount.Value().ToString + Chr(10) _
    & "=============================================" & Chr(10) _
    & "The Package: " + varPackageName.Value().ToString _
    & Chr(10) _
    & "Started: " & varStartTime.Value().ToString _
    & Chr(10) _
    & "Current Time:" & System.DateTime.Now _
    & Chr(10) _
    & "=============================================" _
    & Chr(10) _
    & "Package Run Duration in seconds: " & PackageDuration _
    & Chr(10) _
    & "Execution GUID: " & varInstanceID.Value().ToString
    sMachine = "."

    If Not EventLog.SourceExists(sSource, sMachine) Then
    EventLog.CreateEventSource(sSource, sLog, sMachine)
    End If

    Dim ELog As New EventLog(sLog, sMachine, sSource)

    ELog.WriteEntry(sEventMessage, EventLogEntryType.Information, 777, 2)

    '###############################
    Dts.TaskResult = Dts.Results.Success
  11. Chiudere la finestra di Microsoft Visual Studio per l'applicazione .

  12. Nel
    Finestra di dialogo Editor attività script fare clic su OK.

  13. Premere F5 per eseguire il pacchetto.

Quando il pacchetto viene eseguito correttamente, nel registro eventi applicazioni di Windows vengono visualizzate informazioni che sono simile al seguente:

Riferimenti

Per ulteriori informazioni, vedere gli argomenti seguenti in Microsoft SQL Server 2005 Books Online:

  • Attività script

  • Programmazione dell'attività Script

  • Procedura: impostare le proprietà di attività utilizzando un Editor di attività

Per ulteriori informazioni sulla modalità di scrittura nel registro eventi applicazione Windows utilizzando Visual Basic di Microsoft, visitare il seguente sito Web Microsoft Developer Network (MSDN):

http://msdn.microsoft.com/en-us/library/07347hdt.aspx

Serve aiuto?

Amplia le tue competenze
Esplora i corsi di formazione
Ottieni in anticipo le nuove caratteristiche
Partecipa a Microsoft Insider

Queste informazioni sono risultate utili?

Grazie per il feedback!

Grazie per il tuo feedback! Potrebbe essere utile metterti in contatto con uno dei nostri operatori del supporto di Office.

×