Partager via


Tâche d’exécution de processus

S’applique à : SQL Server SSIS Integration Runtime dans Azure Data Factory

La tâche d’exécution de processus exécute une application ou un fichier de commandes dans le cadre d’un workflow 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 d'entreprise ou des fichiers de commandes travaillant 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 personnalisée Visual Basic, chargée de générer quotidiennement un rapport sur les 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 effectuent des opérations de workflow comme l’exécution de packages. Pour plus d’informations, consultez Tâche d’exécution de package.

Entrées de journal personnalisées disponibles pour la tâche Exécuter le 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).

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 Fournit des informations sur les variables qui doivent être acheminé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 les propriétés par le biais du concepteur SSIS ou par programmation.

Pour plus d’informations sur la configuration de ces propriétés dans SSIS Designer, consultez Ajouter ou supprimer une tâche ou un conteneur dans un flux de contrôle.

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 :

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écute 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.

Quand 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 Méthode Console.ReadLine.

Quand 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 Propriété ConsoleApplicationBase.CommandLineArgs.

  • 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#).

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 pour échouer si le code de retour de l’exécutable ne correspond pas à la valeur indiquant le succès, ou si l’exécutable n’est pas trouvé à l’emplacement spécifié.

Configuration programmatique de la tâche Exécuter le processus

Pour plus d’informations sur la définition de ces propriétés par programmation, consultez ExecuteProcess.

Éditeur de tâche d’exécution de processus (page Général)

La page Général de la boîte de dialogue Éditeur de tâche d’exécution de processus permet de nommer et de décrire la tâche d’exécution de processus.

Options

Nom
Fournissez un nom unique pour la tâche d'exécution de processus. Ce nom sert d'étiquette à l'icône de la tâche.

Notes

Les noms de tâche doivent être uniques dans un package.

Description
Entrez une description de la tâche d'exécution de processus.

Éditeur de tâche d’exécution de processus (page Processus)

Utilisez la page Traiter de la boîte de dialogue Éditeur de tâche d'exécution de processus pour configurer les options qui exécutent le processus. Ces options comprennent l'exécutable à lancer, son emplacement, les arguments de l'invite de commandes et les variables qui fournissent l'entrée et la sortie de capture.

Options

RequireFullFileName
Indiquez si la tâche doit échouer au cas où l’exécutable est introuvable à l’emplacement spécifié.

Exécutable
Tapez le nom de l'exécutable à lancer.

Arguments
Fournissez les arguments de l'invite de commandes.

WorkingDirectory
Saisissez le chemin d’accès du dossier qui contient l’exécutable ou cliquez sur le bouton Parcourir (...), puis recherchez le dossier.

StandardInputVariable
Sélectionnez une variable pour fournir l’entrée au processus ou cliquez sur <Nouvelle variable…> pour en créer une :

Rubriques connexes : Variables Integration Services (SSIS)

StandardOutputVariable
Sélectionnez une variable pour capturer la sortie du processus ou cliquez sur <Nouvelle variable…> pour en créer une.

StandardErrorVariable
Sélectionnez une variable pour capturer la sortie d’erreur du processeur ou cliquez sur <Nouvelle variable…> pour en créer une.

FailTaskIfReturnCodeIsNotSuccessValue
Indiquez si la tâche échoue quand le code de sortie du processus est différent de la valeur spécifiée dans SuccessValue.

SuccessValue
Spécifiez la valeur retournée par l'exécutable pour indiquer le succès de l'opération. Par défaut, cette valeur est définie sur 0.

TimeOut
Spécifiez la durée en secondes de l'exécution du processus. Une valeur 0 indique qu’aucune valeur de délai d’expiration n’est utilisée et que le processus s’exécute jusqu’à ce qu’il se termine ou jusqu’à ce qu’une erreur se produise.

TerminateProcessAfterTimeOut
Indiquez si le processus doit se terminer après le délai d’attente spécifié par l’option TimeOut . Cette option est uniquement disponible si la valeur de TimeOut n’est pas 0.

WindowStyle
Spécifiez le style de la fenêtre dans lequel le processus est exécuté.