Tâche de script
La tâche de script fournit du code permettant d’exécuter des fonctions qui ne sont pas disponibles dans les tâches et transformations intégrées de SQL Server Integration Services. La tâche de script peut également combiner des fonctions dans un même script au lieu d'utiliser plusieurs tâches et transformations. Utilisez la tâche de script pour le travail devant être effectué une fois dans un package (ou une fois par objet énuméré), et non une fois par ligne de données.
Vous pouvez utiliser la tâche de script aux fins suivantes :
Accéder aux données à l'aide d'autres technologies non prises en charge par les types de connexion intégrés. Par exemple, un script peut utiliser des interfaces ADSI (Active Directory Service Interfaces) pour accéder aux noms d'utilisateur et les extraire d'Active Directory.
Créer un compteur de performances spécifique au package. Par exemple, un script peut créer un compteur de performances mis à jour pendant l'exécution d'une tâche complexe ou peu performante.
Déterminez si les fichiers spécifiés sont vides ou combien de lignes ils contiennent, puis en fonction de ces informations, affectez le flux de contrôle dans un package. Par exemple, si un fichier ne contient aucune ligne, la valeur 0 d'une variable et une contrainte de précédence qui évalue la valeur empêchent une tâche de système de fichiers de copier le fichier.
Si vous devez utiliser le script afin d'effectuer le même travail pour chaque ligne de données d'un ensemble, vous devriez utiliser le composant Script à la place de la tâche de script. Par exemple, si vous souhaitez évaluer un montant de frais de port raisonnable et ignorer les lignes de données présentant des montants extrêmement élevés ou bas, il convient d'utiliser un composant Script. Pour plus d’informations, voir Script Component.
Si plusieurs packages utilisent un script, envisagez l'écriture d'une tâche personnalisée plutôt que de recourir à la tâche de script. Pour plus d’informations, consultez Développement d’une tâche personnalisée.
Si vous choisissez la tâche de script pour votre package, vous devez développer le script utilisé par la tâche et configurer cette dernière.
Écriture et exécution du script utilisé par la tâche
La tâche de script utilise Microsoft Visual Studio Tools for Applications (VSTA) comme environnement d’écriture des scripts et moteur d’exécution de ces derniers.
VSTA fournit l’ensemble des fonctionnalités standard de l’environnement Visual Studio , telles que l’éditeur Visual Studio à code de couleur, IntelliSense et l’Explorateur d’objets. VSTA utilise également le même débogueur que les autres outils de développement Microsoft . Les points d'arrêt dans le script fonctionnent de façon transparente avec ceux des tâches et des conteneurs Integration Services . VSTA prend en charge les langages de programmation Microsoft Visual Basic et Microsoft Visual C#.
Vous ne pouvez lancer un script que si VSTA est installé sur l'ordinateur où le package est exécuté. Lorsque le package s'exécute, la tâche charge le moteur de script puis exécute le script. Vous pouvez accéder aux assemblys .NET externes dans les scripts en ajoutant des références aux assemblys du projet.
Notes
Contrairement aux versions antérieures pour lesquelles il était possible d’indiquer si les scripts étaient précompilés, tous les scripts de SQL Server 2008 Integration Services (SSIS) et des versions ultérieures sont précompilés. Lorsqu'un script est précompilé, le moteur de langage n'est pas chargé au moment de l'exécution et le package s'exécute plus rapidement. Toutefois, les fichiers binaires précompilés occupent un espace disque important.
Configuration de la tâche de script
Vous pouvez configurer la tâche de script comme suit :
Fournissez le script personnalisé que la tâche exécute.
Spécifiez la méthode dans le projet VSTA utilisée au moment de l’exécution de Integration Services comme point d’entrée du code de tâche de script.
Spécifiez le langage de script
Éventuellement, fournissez les listes des variables en lecture seule et en lecture/écriture à utiliser dans le script.
Vous pouvez définir ces propriétés via le concepteur SSIS ou par programme.
Configuration de la tâche de script dans le concepteur
Le tableau suivant décrit l'événement ScriptTaskLogEntry
pouvant être consigné pour la tâche de script. L’événement ScriptTaskLogEntry
est sélectionné pour la journalisation sous l’onglet Détails de la boîte de dialogue Configurer les journaux SSIS . Pour plus d’informations, consultez Journalisation Integration Services (SSIS) et Messages personnalisés pour la journalisation.
Entrée du journal | Description |
---|---|
ScriptTaskLogEntry |
Indique les résultats de l'implémentation de la journalisation dans le script. La tâche écrit une entrée de journal pour chaque appel de la méthode Log de l'objet Dts . La tâche écrit ces entrées lorsque le code est exécuté. Pour plus d’informations, consultez Journalisation dans la tâche de script. |
Pour plus d'informations sur les propriétés définissables dans le concepteur SSIS , consultez les rubriques suivantes :
Pour plus d’informations sur la définition de ces propriétés dans le concepteur SSIS , consultez la rubrique suivante :
Configuration par programme de la tâche de script
Pour plus d’informations sur la définition par programmation de ces propriétés, consultez sur la rubrique suivante :
Contenu associé
- Article technique Procédure d'envoi de courrier électronique avec notification de remise en C#(Procédure d’envoi d’e-mail avec notification de remise en C#) sur shareourideas.com