DetailPage-MSS-KB

Base de connaissances

Numéro d'article: 906560 - Dernière mise à jour: vendredi 22 septembre 2006 - Version: 3.2

 

Résumé

Lorsque vous utilisez Microsoft SQL Server Business Intelligence Development Studio pour créer un package Microsoft SQL Server 2005 Integration Services (SSIS), vous pouvez inclure une tâche de script dans le package SSIS pour exécuter une tâche.

Par exemple, la tâche peut écrire un ensemble d'informations variables dans le journal des événements Application Windows. Vous pouvez créer un package SSIS qui contient une tâche de flux de données. Cette tâche de flux de données inclut une transformation du nombre de lignes. Vous pouvez utiliser une tâche de script pour écrire les données qui a été remplies par la transformation nombre de lignes dans le journal des événements Application Windows.

Cet article explique comment utiliser une tâche de script pour écrire des informations dans le journal des événements Application Windows.

Plus d'informations

Cet exemple suppose que vous avez créé les éléments suivants dans le package SSIS :
  • Un données tâche de flux
  • Une tâche de script
  • Un lien de la tâche de flux de données à la tâche de script
  • Dans la tâche de données, vous avez créé une transformation de nombre de lignes dans le flux de données.
Lorsque vous exécuter le package, le nombre de lignes transformation renvoie les données nombre ligne vous souhaitez écrire dans le journal des événements Application Windows.

Pour cela, procédez comme suit dans le SQL Server Business Intelligence Development Studio :
  1. Lorsque l'onglet flux de contrôle est actif, cliquez avec le bouton droit sur la surface de conception, puis cliquez sur variables . La fenêtre variables s'affiche dans le volet gauche.
  2. Dans la fenêtre variables , cliquez sur Ajouter variable pour ajouter une variable nommée mycount. Par défaut, le type de données de la nouvelle variable mycount est int32 .

    note Références à des noms de variables respectent la casse.
  3. Double-cliquez sur la tâche de flux de données . L'onglet flux de données s'affiche.
  4. Double-cliquez sur la transformation du nombre de lignes . La boîte de dialogue Éditeur Avancé s'affiche.
  5. Définissez la valeur de la propriété VariableName à mycount .
  6. Cliquez sur l'onglet flux de contrôle , puis double-cliquez sur la tâche de script . La boîte de dialogue Éditeur de tâches de script s'affiche.
  7. Cliquez sur l'élément script dans le volet gauche et modifiez la valeur de la propriété ReadOnlyVariables à la valeur suivante : les articles
    PackageName,StartTime,ExecutionInstanceGUID,mycount
    PackageName la Remarque , heure de début et ExecutionInstanceGUID sont variables système. Ces variables système sont utilisées pour écrire les informations de package dans le journal des événements Application Windows.
  8. Dans la boîte de dialogue Éditeur de tâches de script , cliquez sur script de création .
  9. Assurez-vous que les espaces de noms suivants sont inclus dans votre code avant toute autre déclaration :
    Imports System
    Imports System.Data
    Imports System.Math
    Imports System.Diagnostics
    Imports Microsoft.SqlServer.Dts.Runtime
  10. Lorsqu'une nouvelle fenêtre de Microsoft Visual Studio pour Applications s'affiche, remplacez l'exemple de code suivant par le code de la méthode Main() . varMyCount
    	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. Fermez la fenêtre Microsoft Visual Studio pour l'application .
  12. Dans la boîte de dialogue Éditeur de tâches de script , cliquez sur OK .
  13. Appuyez sur F5 pour exécuter le package.
Lorsque le package s'exécute correctement, des informations semblables aux suivants apparaissent dans le journal des événements d'applications de Windows :

Type d'événement : informations
Source de l'événement : RowCountReporting de SSIS
Catégorie d'événement : disque
L'ID d'événement : 777
Date : 10/8/2005
Heure: 11:30:51 des comptes fournisseurs
Utilisateur: n / A
Ordinateur : ComputerName
Description :
Lignes traitées :
cas 3: les lignes
=============================================
Le package : RowCountsInEventLog
Démarré: 9/14/2005 2:27:19 des comptes fournisseurs
En cours heure: 9/14/2005 2:27:19 des comptes fournisseurs
=============================================
Package exécuter la durée en secondes: 0
Exécution GUID: {07406D68-487F-4733-BA3A-DA66A8AF7EFA}

Pour plus d'informations, voir le Centre d'aide et de support à l'adresse suivante : http://support.microsoft.com.

Références

Pour plus d'informations, consultez les rubriques suivantes dans Microsoft SQL Server 2005 documentation en ligne :
  • Tâches de script
  • Programmation de la tâche de script
  • Comment : définir les propriétés des tâches à l'aide un éditeur de tâches
Pour plus d'informations écrire dans le journal des événements d'applications Windows à l'aide de Microsoft Visual Basic, reportez-vous au site de Web MSDN (Microsoft Developer Network) suivant :
http://msdn.microsoft.com/en-us/library/07347hdt.aspx (http://msdn.microsoft.com/en-us/library/07347hdt.aspx)

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
Mots-clés : 
kbmt kbsql2005ssis kbhowto KB906560 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d’articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d’avoir accès, dans votre propre langue, à l’ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s’exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s’efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 906560  (http://support.microsoft.com/kb/906560/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Partager
Options de support supplémentaire
Forums du support Microsoft Community
Nous contacter directement
Trouver un partenaire Microsoft Certified Partner
Microsoft Store