Tâche d'exécution de processus

La tâche d'exécution de processus exécute une application ou un fichier de commandes dans le cadre d'un flux de travail de package SQL Server Integration Services. Bien qu'il soit possible d'utiliser la tâche d'exécution de processus pour ouvrir des applications standard telles que Microsoft Excel ou Microsoft Word, il est courant de l'utiliser pour exécuter des applications de gestion ou des fichiers de commandes fonctionnant sur une source de données. Par exemple, vous pouvez utiliser la tâche d'exécution de processus pour développer un fichier texte compressé. Ensuite, le package peut utiliser le fichier texte comme source de données pour le flux de données de ce package. Vous pouvez aussi utiliser la tâche d'exécution de processus pour démarrer une application Visual Basic personnalisée qui génère quotidiennement un état des ventes. Ensuite, vous pouvez associer le rapport à une tâche Envoyer un message pour le transmettre à une liste de distribution.

Integration Services comprend d'autres tâches qui réalisent des opérations de flux de travail, telles que l'exécution de packages. Pour plus d'informations, consultez Tâche d'exécution de package

Entrées de journal personnalisées disponibles dans la tâche d'exécution de processus

Le tableau suivant répertorie les entrées de journal personnalisées pour la tâche d'exécution de processus. Pour plus d'informations, consultez Journalisation d'Integration Services (SSIS) et Messages personnalisés pour la journalisation.

Entrée du journal

Description

ExecuteProcessExecutingProcess

Fournit des informations sur le processus que la tâche est chargée d'exécuter.

Deux entrées de journal sont écrites. La première contient des informations sur le nom et l'emplacement de l'exécutable que la tâche exécute ; la deuxième enregistre la sortie de l'exécutable.

ExecuteProcessVariableRouting

Donne des informations sur les variables qui doivent être routées vers l'entrée et les sorties de l'exécutable. Les entrées du journal sont écrites pour stdin (l'entrée), stdout (la sortie) et stderr (la sortie des erreurs).

Configuration de la tâche d'exécution de processus

Vous pouvez définir des propriétés au moyen du concepteur SSIS ou par programmation.

Pour plus d'informations sur les propriétés définissables dans le concepteur SSIS, cliquez sur l'une des rubriques suivantes :

Pour plus d'informations sur la définition de ces propriétés dans le concepteur SSIS, cliquez sur la rubrique suivante :

Paramètres de propriété

Lorsque la tâche d'exécution de processus exécute une application personnalisée, elle fournit l'entrée à l'application via l'une des méthodes suivantes, ou les deux :

  • Une variable que vous spécifiez dans le paramètre de propriété StandardInputVariable. Pour plus d'informations sur les variables, consultez Variables Integration Services (SSIS) et Utiliser des variables dans des packages.

  • Un argument que vous spécifiez dans le paramètre de propriété Arguments. (Par exemple, si la tâche ouvre un document dans Word, l'argument peut nommer le fichier .doc.)

Pour passer plusieurs arguments à une application personnalisée dans une tâche d'exécution de processus, utilisez des espaces pour délimiter les arguments. Un argument ne peut pas inclure d'espace ; sinon, la tâche ne s'exécutera pas. Vous pouvez utiliser une expression pour passer une valeur variable comme argument. Dans l'exemple suivant, l'expression passe deux valeurs variables comme arguments et utilise un espace pour délimiter les arguments :

@variable1 + " " + @variable2

Vous pouvez utiliser une expression pour définir différentes propriétés de tâche d'exécution de processus.

Lorsque vous configurez la tâche d'exécution de processus à l'aide de la propriété StandardInputVariable pour fournir l'entrée, appelez la méthode Console.ReadLine de l'application pour lire l'entrée. Pour plus d'informations, consultez la rubrique Console.ReadLine, méthode de la bibliothèque de classes Microsoft .NET Framework.

Lorsque vous configurez la tâche d'exécution de processus à l'aide de la propriété Arguments pour fournir l'entrée, effectuez l'une des étapes suivantes pour obtenir les arguments :

  • Si vous utilisez Microsoft Visual Basic pour écrire l'application, définissez la propriété My.Application.CommandLineArgs. L'exemple suivant définit la propriété My.Application.CommandLineArgs pour extraire deux arguments :

    Dim variable1 As String = My.Application.CommandLineArgs.Item(0)
    Dim variable2 As String = My.Application.CommandLineArgs.Item(1) 
    

    Pour plus d'informations, consultez la rubrique My.Application.CommandLineArgs, propriété dans la Référence Visual Basic.

  • Si vous utilisez Microsoft Visual C# pour écrire l'application, utilisez la méthode Main.

    Pour plus d'informations, consultez la rubrique Arguments de ligne de commande (Guide de programmation C#) du Guide de programmation C#.

La tâche d'exécution de processus comprend également les propriétés StandardOutputVariable et StandardErrorVariable à l'aide desquelles vous pouvez spécifier les variables qui exploitent la sortie et la sortie d'erreur standard de l'application, respectivement.

En outre, vous pouvez configurer la tâche d'exécution de processus de manière à spécifier un répertoire de travail, un délai d'attente ou une valeur pour indiquer que l'exécutable s'est correctement exécuté. La tâche peut également être configurée de manière à échouer si l'exécutable est introuvable à l'emplacement spécifié ou que le code de retour de l'exécutable ne correspond pas à la valeur indiquant la réussite.

Configuration par programme de la tâche d'exécution de processus

Pour plus d'informations sur la définition par programmation de ces propriétés, cliquez sur la rubrique suivante :

Contenu associé

Icône Integration Services (petite)Rester à jour avec Integration Services

Pour obtenir les derniers téléchargements, articles, exemples et vidéos de Microsoft, ainsi que des solutions sélectionnées par la communauté, visitez la page Integration Services sur MSDN :


Pour recevoir une notification automatique de ces mises à jour, abonnez-vous aux flux RSS disponibles sur la page.

Voir aussi

Concepts

Tâches Integration Services

Flux de contrôle