activities
latest
false
Important :
Veuillez noter que ce contenu a été localisé en partie à l’aide de la traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.
UiPath logo, featuring letters U and I in white

Activités de workflow

Dernière mise à jour 4 mars 2026

Exemple de workflows

Le panneau Extraits de UiPath Studio stocke les fichiers XAML ajoutés par les utilisateurs. Les exemples de fichiers XAML sont stockés dans des dossiers. Le dossier qui stocke les fichiers XAML utilisés dans les workflows de longue durée s'appelle Orchestration.

Les exemples de fichiers XAML sont en lecture seule. Vous devez créer un processus distinct dans Studio, où vous répliquez les activités et les configurations trouvées dans les extraits.

Ces extraits représentent des exemples de workflows créés avec les activités disponibles dans le package d’activités Persistance .

Prérequis

  • Pour développer des workflows de longue durée, basés sur ceux du panneau Extraits , le package UiPath.Persistence.Activities doit être installé.
  • Nous vous recommandons d'utiliser le modèle Processus d'orchestration pour commencer à créer des workflows de longue durée.

Ajouter un élément de la file d'attente et Attendre la fin

Cet extrait crée un élément de file d'attente et suspend le workflow jusqu'à ce que le traitement de cet élément de file d'attente soit terminé.

  1. Faites glisser une activité Add Queue Item And Get Reference dans votre workflow.

    Cette activité ajoute un élément de file d'attente dans un conteneur de file d'attente situé dans Orchestrator, à l'aide des paramètres d'entrée/de sortie. Ensuite, il récupère les données correspondantes sur l'objet d'élément de file d'attente récemment créé dans une variable de type QueueItemData , afin de suspendre le workflow, jusqu'à ce que l'élément de file d'attente soit ajouté à la file d'attente. Consultez la page Ajouter un élément de la file d'attente et obtenir la référence pour plus d'informations sur l'activité.

    Lorsque les éléments de la file d'attente sont ajoutés à la file d'attente Orchestrator, toutes les variables de type QueueItemData seront renseignées avec les données récupérées à partir d'Orchestrator.

    1. Dans la collection Informations sur l'élément , créez un paramètre avec la Direction Entrée/Sortie et définissez la valeur comme variable que vous souhaitez transmettre en tant qu'élément de la file d'attente. Pour cet exemple, transmettez une variable String nommée Test.
    2. Dans le champ de propriété QueueItemObject(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type QueueItemData pour stocker les données sur l'élément de file d'attente, après sa création dans Orchestrator. Pour cet exemple, créez une variable QueueItemData nommée QueueItemObject.

    docs image

  2. Faites glisser toutes les activités que vous souhaitez exécuter avant la suspension du workflow pour récupérer les données sur l’élément de la file d’attente. Dans cet extrait, la section Toutes les étapes à exécuter avant de suspendre le workflow est commentée, agissant comme un conteneur à l'intérieur duquel vous pouvez placer des activités qui ne seront pas exécutées lors du runtime.

  3. Faites glisser une activité Wait For Queue Item And Resume dans votre workflow. Cette activité attend qu'un élément de la file d'attente soit ajouté et traité dans Orchestrator, afin de récupérer les données correspondantes et de les mapper à nouveau dans le workflow, à l'intérieur des variables de type QueueItemData . Consultez la page Attendre l’élément de la file d’attente et reprendre pour plus d’informations sur l’activité.

    1. Dans le champ de propriété Objet d'élément de file d'attente (Entrée) , transmettez la variable QueueItemObject pour référencer l'élément de file d'attente exact que vous souhaitez ajouter à Orchestrator.
    2. Dans le champ de propriété Objet d'élément de file d'attente (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type QueueItemData pour stocker les données sur l'élément de file d'attente après son traitement et sa récupération.
  4. Add a Write Line activity into your workflow, to print out the Queue Item that you added in Orchestrator. For this example, in the Text property field, pass the Test variable.

Créer une tâche externe et Suspendre jusqu'à la fin

This snippet creates an External Action and suspends the workflow until the user completes the action.

  1. Faites glisser une activité Create External Task dans votre workflow. Cette activité crée une action externe dans Action Center avec le titre de tâche , la priorité de la tâche , le catalogue de tâches) et les données de tâche . Consultez la page Créer une tâche externe pour plus d'informations sur l'activité.

  2. Renseignez la fenêtre de propriété TaskDataCollection avec des arguments qui transmettent des informations d'entrée; de sortie ou d'entrée/de sortie. Pour cet exemple, créez trois arguments, chacun d'eux avec une direction différente : In, Out, et In/Out. Définissez le Type sur String. Pour le champ Valeur , appuyez sur CTRL + K sur votre clavier et créez trois variables, qui donnent des informations ( pour les arguments de type In ) ou extraient des informations ( pour les arguments de type Out ).

    For this example, create three String type variables:

    • InVariable - the Value of the argument of type In.
    • OutVariable - the Value of the argument of type Out.
    • InOutVariable - the Value of the argument of type In/Out.

    docs image

    Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type ExternalTaskData . Pour cet exemple, nommez la variable TaskPersistData. Cet objet ExternalTaskData est utilisé pour transmettre des données depuis Orchestrator, afin d'informer le Robot que tant qu'une tâche Action spécifique n'est pas terminée, le workflow est suspendu.

  3. Ajoutez toutes les activités que vous souhaitez exécuter avant la suspension du workflow pour récupérer des données sur l'objet ExternalTaskData .

    1. For this example, drag and drop a Sequence activity into your workflow and populate with three Write Line activities. Each Write Line activity is meant to output the data of the three variables passed in the External Task. Pass the following values in the Text property fields: InVariable, OutVariable, InOutVariable.
  4. Faites glisser une activité Wait For External Task and Resume dans votre workflow. Cette activité suspend le workflow jusqu'à ce qu'une tâche externe soit terminée, puis la remappe dans le workflow à l'intérieur des variables de type ExternalTaskData . Consultez la page Attendre la tâche externe et reprendre pour en savoir plus sur cette activité.

    1. Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable ExternalTaskData pour référencer la tâche externe exacte que vous avez créée. Pour cet exemple, passez la variable TaskPersistData .
    2. Dans le champ de propriété Action de tâche , appuyez sur CTRL + k sur votre clavier et créez une variable de type String et nommez-la TaskAction. Il stocke l’action entreprise par l’utilisateur pour terminer la tâche.
    3. Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable de typeDonnéesTâcheExternes et nommez-la TaskData. Cette variable stocke l'objet Tâche mis à jour récupéré à partir d'Orchestrator à la fin de l'action externe.
  5. Add any activities that you want to run after the workflow is resumed. For this example, print in the Output panel all the values retrieved after the completion of the External Action, using four Write Line activities. Pass the following variables in the Text fields: TaskAction, InVariable, OutVariable, InOutVariable.

    docs image

Créer une tâche de formulaire et Suspendre jusqu'à la fin

Cet extrait crée des Actions de formulaire et suspend le workflow jusqu'à ce que l'utilisateur termine les Actions.

  1. Faites glisser une activité Create Form Task dans votre workflow. Cette activité crée une action de formulaire dans Action Center avec le titre de tâche, la priorité de la tâche, le catalogue de tâches (auparavant appelé Catalogue d’actions) et les données de tâche. Consultez la page Créer une tâche de formulaire pour plus d'informations sur l'activité.

  2. Renseignez la fenêtre de propriété Task Data Collect avec des arguments qui transmettent des informations d'entrée; de sortie ou d'entrée/de sortie. Pour cet exemple, créez trois arguments, chacun d'eux avec une direction différente : In, Out, et In/Out. Définissez le Type sur String. Pour le champ Valeur , appuyez sur CTRL + K sur votre clavier et créez trois variables qui fournissent des informations (pour les arguments de type In ) ou extraient des informations (pour les arguments de type Out ).

    For this example, create three String type variables:

    • InVariable - the Value of the argument of type In.
    • OutVariable - the Value of the argument of type Out.
    • InOutVariable - the Value of the argument of type In/Out.

    docs image

    Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type FormTaskData . Pour cet exemple, nommez la variable TaskPersistData. Cet objet FormTaskData est utilisé pour transmettre des données depuis Orchestrator, afin d'informer le Robot que tant qu'une tâche Action spécifique n'est pas terminée, le workflow est suspendu.

  3. Add any activities that you want to run before the workflow is suspended to retrieve data about the FormTaskData object. For this example, drag and drop a Sequence activity into your workflow and populate it with three Write Line activities. Each Write Line activity is meant to output the data of the three variables passed in the External Action. Pass the following values in the Text property fields: InVariable, OutVariable, InOutVariable.

  4. Faites glisser une activité Wait For External Task and Resume dans votre workflow. Cette activité suspend le workflow jusqu'à ce qu'une action de formulaire soit terminée, puis la remappe dans le workflow, à l'intérieur des variables de type FormTaskData .

    1. Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable FormTaskData pour référencer la tâche de formulaire exacte que vous avez créée dans Action Center. Pour cet exemple, passez la variable TaskPersistData .
    2. Dans le champ de propriété Action de tâche , appuyez sur CTRL + k sur votre clavier et créez une variable de type String et nommez-la TaskAction. Il stocke l’action entreprise par l’utilisateur pour terminer la tâche.
    3. Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type FormTaskData et nommez-la TaskData. Cette variable stocke l'objet Tâche mis à jour récupéré à partir d'Orchestrator à la fin de la tâche.
  5. Drag any activities that you want to run after the workflow is resumed. For this example, pass in the Output panel all the values retrieved after the completion of the External Action, using four Write Line activities. Pass the following variables in the Text fields: TaskAction, InVariable, OutVariable, InOutVariable.

Créer une tâche et affecter à un utilisateur

Cet extrait crée deux actions externes, les affecte à un utilisateur et affiche une liste des affectations d’actions ayant échoué.

  1. Drag two Create External Task activities into your workflow.

    1. Pour la première activité, donnez un titre à l’action et définissez sa priorité. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type ExternalTaskData . Pour cet exemple, nommez-le Task1PersistData.

    2. Pour la deuxième activité, donnez un titre à l’action et définissez sa priorité. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type ExternalTaskData . Pour cet exemple, nommez-le Task2PersistData.

      docs image

  2. Faites glisser deux activités Add To Collection dans votre workflow.

    Remarque :

    L'activité Ajouter à la collection est une activité Classique. Pour rendre l'activité Ajouter à la collection disponible dans votre projet :

    • Have System.Activities package 22.4.1 or lower installed.
    • Accédez au panneau Activités .
    • Cliquez sur les options d'affichage docs image icône.
    • Cliquez sur Affichage classique. L'activité se trouve dans les activités par défaut > Programmation > Collection.
    1. Dans les champs de propriété Collection , appuyez sur CTRL + k sur votre clavier et créez une variable de type List<TaskUserAssignment> et nommez-la TaskAssignementsInput. Accédez au panneau Variables et initialisez la variable dans le champ Par défaut en tant que new List(Of TaskUserAssignment.

    2. Dans le champ de propriété Élément , créez une instance de TaskUserAssignment, qui comporte les paramètres suivants : la variable ExternalTaskData et l'adresse e-mail de l'utilisateur auquel vous souhaitez affecter la tâche. Pour cet exemple, saisissez les informations suivantes :

      • Thenew TaskUserAssignment(Task1PersistData.Id, "emailaddress") expression for the first Add To Collection activity
      • The new TaskUserAssignment(Task2PersistData.Id, "emailaddress") expression for the second Add To Collection activity.

      docs image

    3. Définissez la propriété TypeArgument sur System.Collections.Generic.List<UiPath.Persistence.Activities.Tasks.TaskUserAssignment>.

  3. Drag an Assign Tasks activity into your workflow.

    1. Dans le champ de propriété TaskUserAssigns (Entrée) , transmettez la variable List<TaskUserAssignment> . Pour cet exemple, passez la variable TaskAssignmentsInput .

    2. Dans le champ de propriété Type d'affectation de tâche , saisissez l'opération d'affectation exacte que vous souhaitez effectuer : Affecter ou Réaffecter. Pour cet exemple, saisissez Assign.

    3. Dans le champ de propriété ÉchecAffectationsTâches (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type List<TaskAssignmentResponse> et nommez-la FailedTaskAssignmentsOutput.

      docs image

  4. Faites glisser une activité Ligne d'écriture pour générer le nombre d'affectations de tâches ayant échoué. Dans le champ de propriété Texte , passez la variable de type List<TaskAssignmentResponse> , puis utilisez les propriétés .Count et .ToString . Pour cet exemple, transmettez l'expression suivante : FailedTaskAssignemntsOutput.Count.ToString.

Démarrer la tâche et reprendre une fois la tâche terminée

Démarre un processus Unattended et suspend le workflow jusqu'à ce qu'une tâche particulière soit terminée.

  1. Faites glisser une activité Start Job And Get Reference dans votre workflow. Cette activité démarre une tâche dans Orchestrator en fonction des arguments saisis, puis récupère l'objet de tâche correspondant. Consultez la page Start Job And Get Reference pour plus d'informations sur l'activité.
    1. Dans le champ de propriété NomProcessus , transmettez le Nom d'affichage du processus que vous souhaitez utiliser pour la tâche. Pour cet exemple, stockez le nom dans une variable. Appuyez sur CTRL +k sur votre clavier et créez une variable de type String et nommez-la ProcessName. Dans le champ Valeur , saisissez le Nom affiché du processus, par exemple, TestProcess_test.

      Remarque :

      Le Nom d'affichage doit être écrit au format suivant : packageName _environment.

      docs image

    2. Dans la propriété Arguments de tâche (Collection) , créez les arguments que vous souhaitez utiliser lors de l'appel de la tâche dans Orchestrator. Cette propriété modifie le type d'arguments Out et In/Out en fonction de l'entrée reçue depuis la Tâche dans Orchestrator, puis les mappe à nouveau dans le workflow. Pour cet exemple, créez un argument Type String , nommé Test, de Direction In/Out. Dans le champ Valeur , appuyez sur CTRL + k sur votre clavier et créez une variable de type String . Nommez la variable Test.

      docs image

    3. Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type JobData , nommée JobPersistenceData. Cette variable stocke l'objet de données de tâche créé lors de l'invocation de la tâche dans Orchestrator, afin de l'utiliser pour l'activité Attendre la tâche et reprendre .

  2. Ajoutez toutes les activités que vous souhaitez exécuter avant la suspension du workflow pour récupérer des données sur l'objet JobData .
  3. Faites glisser une activité Wait for Job and Resume dans votre workflow. Cette activité suspend le workflow jusqu’à ce qu’une tâche spécifique dans Orchestrator soit terminée. Une fois la tâche terminée, le workflow reprend.
    1. Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable de type JobData créée pour l'activité Démarrer la tâche et obtenir une référence . Pour cet exemple, passez la variable JobPersistenceData . Cela indique au robot la tâche exacte qui doit être terminée jusqu'à la reprise du workflow.
    2. Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type JobData . Pour cet exemple, nommez-le JobDataObject.
  4. Faites glisser une activité Ligne d'écriture pour imprimer l'argument qui a été remappé dans le workflow. Dans le champ de propriété Texte , transmettez la variable utilisée comme Valeur pour l'argument créé dans l' activité Arguments de tâche (Collection). Pour cet exemple, passez la variable Test .

Suspendre et reprendre après 1 heure

Cet extrait suspend le workflow donné et le reprend après une heure.

  1. Ajoutez les activités que vous souhaitez exécuter avant la suspension du workflow.

  2. Faites glisser une activité Resume After Delay dans votre workflow. Cette activité suspend le workflow donné et le reprend à une date et heure spécifiées. Consultez la page Resume After Delay pour en savoir plus sur cette activité.

    1. Dans le panneau Variables , créez une variable de type System.TimeSpan . Pour cet exemple, nommez la variable OneHour. Définissez la valeur Par défaut de la variable TimeSpan sur New TimeSpan(1,0,0).
    2. Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression DateTime.Now et la variable TimeSpan . Pour cet exemple, transmettez l'expression suivante : DateTime.Now + OneHour.

    docs image

  3. Ajoutez les activités que vous souhaitez exécuter après la reprise du workflow.

Suspendre et reprendre après 5 minutes

Cet extrait suspend le workflow donné et le reprend après cinq minutes.

  1. Faites glisser les activités que vous souhaitez exécuter avant la suspension du workflow.

  2. Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.

    1. Dans le panneau Variables , créez une variable de type System.TimeSpan . Pour cet exemple, nommez la variable FiveMinute. Définissez la valeur Par défaut de la variable TimeSpan sur New TimeSpan(0,5,0).
    2. Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression DateTime.Now et la variable TimeSpan . Pour cet exemple, transmettez l'expression suivante : DateTime.Now + FiveMinute.

    docs image

  3. Faites glisser les activités que vous souhaitez exécuter après la reprise du workflow.

Suspendre et reprendre après 90 secondes

Cet extrait suspend le workflow donné et le reprend après quatre-vingt-dix secondes.

  1. Ajoutez les activités que vous souhaitez exécuter avant la suspension du workflow.

  2. Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.

    1. Dans le panneau Variables , créez une variable de type System.TimeSpan . Pour cet exemple, nommez la variable NinetySeconds. Définissez la valeur Par défaut de la variable TimeSpan sur New TimeSpan(0,0,90).
    2. Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression DateTime.Now et la variable TimeSpan . Pour cet exemple, transmettez l'expression suivante : DateTime.Now + NinetySeconds.

    docs image

  3. Faites glisser les activités que vous souhaitez exécuter après la reprise du workflow.

Attendre la fin de toutes les tâches de formulaire

Cet extrait crée plusieurs actions de formulaire dans une boucle, en fonction du nombre de factures dans une table de données, et suspend le workflow jusqu'à ce que toutes les actions soient terminées.

  1. Faites glisser une activité BuildDataTable vers votre workflow.

    1. Dans le champ de propriété Sortie , appuyez sur CTRL + k sur votre clavier et créez une variable de type DataTable pour stocker la table de données que vous créez. Pour cet exemple, nommez la variable DataTable sous la forme HighValueInvoices.
    2. Cliquer docs image. La fenêtre Créer une table de données s'ouvre.
    3. Renommez Column1 en InvoiceNumber et Column2 en InvoiceAmount.
    4. Ajoutez des données à l'intérieur des lignes de la table et appuyez sur OK.

    docs image

  2. Faites glisser une activité Assign dans votre workflow. Cette activité attribue un nom à la table de données, stocké dans une variable String .

    1. Dans le champ de propriété À , transmettez la variable DataTable . Pour cet exemple, passez la variable HighValueInvoices .
    2. Dans le champ de propriété Valeur , appuyez sur CTRL + k sur votre clavier et créez une variable de type String . Pour cet exemple, nommez-le DataTableName. Définissez la valeur Par défaut de la variable DataTableName sur ``"invoices"`.
  3. Faites glisser une activité Pour chaque dans votre flux de travail. Dans le champ de propriété Liste d'éléments , transmettez une expression au format suivant : DataTableVariable.Rows. Pour cet exemple, passez HighValueInvoices.Rows. Cela permet de parcourir chaque ligne de la table de données.

  4. Drag a Create Form Task activity inside the Body of the For Each activity.

    1. Dans le champ de propriété Titre de la tâche , saisissez la valeur Numéro de facture que l'activité Pour chaque récupère et convertissez-la en chaîne. Pour cet exemple, saisissez l'expression suivante : item("InvoiceNumber").ToString, où InvoiceNumber est le nom de la colonne contenant le numéro respectif pour chaque facture.
    2. Dans Données de formulaire (Collection), créez un argument qui transmet chaque montant de facture à l'intérieur de l'action de formulaire. Créez un argument Type String et définissez la Direction sur In. Dans le champ Valeur , saisissez chaque montant de facture et convertissez-le en String. Pour cet exemple, saisissez l'expression suivante : item("InvoiceAmount").ToString, où InvoiceAmount est le nom de la colonne contenant le montant respectif pour chaque facture.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable de type FormTaskData . Pour cet exemple, nommez la variable TaskPersistData.

    docs image

  5. Drag an Add To Collection activity inside the Body of the For Each activity.

    1. Dans le champ de propriété Collection , appuyez sur CTRL + k sur votre clavier et créez une variable List<FormTaskData> et nommez-la TaskList. Accédez au panneau Variables et initialisez la variable dans le champ Par défaut en tant que New List(Of UiPath.Persistence.Activities.FormTask.FormTaskData.
    2. Dans le champ de propriété Élément , transmettez la variable FormTaskData , créée pour stocker les données relatives aux actions de formulaire créées. Pour cet exemple, passez la variable TaskPersistData .
    3. Pour la propriété TypeArgument , choisissez UiPath.Persistence.Activities.FormTask.FormTaskData.
  6. Drag a Parallel For Each activity into your workflow.

    1. Pour la propriété TypeArgument , choisissez UiPath.Persistence.Activities.FormTask.FormTaskData.
    2. Dans le champ de propriété Valeurs , transmettez la variable List<FormTaskData> . Pour cet exemple, passez la variable TaskList .
  7. Faites glisser une activité Wait for Form Task and Resume dans le corps de l'activité Parallel For Each .

    1. Dans le champ de propriété TaskObject(Entrée) , entrez l'objet item , référencé dans l'activité Parallel For Each . Dans ce cas, l'objet item représente les actions de formulaire stockées dans la variable TaskList .
    2. Dans le champ de propriété TaskAction , appuyez sur CTRL + k sur votre clavier et créez une variable String . Pour cet exemple, nommez-le TaskAction.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez-le TaskData.

    docs image

  8. Drag a Write Line activity into your workflow. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction variable.

Attendre la fin d'une tâche de formulaire

Cet extrait crée plusieurs Actions de formulaire en séquence et suspend le workflow jusqu'à ce que l'une des Actions de formulaire soit terminée.

  1. Drag a Create Form Task activity into your sequence workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle1. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 1".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver1".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData1.
  2. Drag a second Create Form Task activity into your workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle2. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 2".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver2".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData2.
  3. Drag a third Create Form Task activity into your workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle3. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 3".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver3".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData3.
  4. Drag a Pick activity into your workflow.

  5. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task1).

  6. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task1) activity.

    1. Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable FormTaskData créée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variable TaskPersistData1 .
    2. Dans le champ de propriété ActionTâche , appuyez sur CTRL + k et créez une variable String . Nommez-la TaskAction1.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData1.
  7. Drag a Write Line activity into the Action body of the Pick Branch (Task1) activity. This activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction1 variable.

    docs image

  8. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task2).

  9. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task2) activity.

    1. Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable FormTaskData créée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variable TaskPersistData2 .
    2. Dans le champ de propriété ActionTâche , appuyez sur CTRL + k et créez une variable String . Nommez-la TaskAction2.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData2.
  10. Drag a Write Line activity into the Action body of the Pick Branch (Task2) activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction2 variable.

  11. Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as Pick Branch (Task3).

  12. Drag a Wait For Form Task And Resume activity into the Trigger body of the Pick Branch (Task3) activity.

    1. Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable FormTaskData créée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variable TaskPersistData3 .
    2. Dans le champ de propriété ActionTâche , appuyez sur CTRL + k et créez une variable String . Nommez-la TaskAction3.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData3.
  13. Drag a Write Line activity into the Action body of the Pick Branch (Task3) activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction3 variable.

Attendre l'achèvement de certaines tâches de formulaire dans la boucle

Cet extrait crée plusieurs Actionsde formulaire en fonction de l'entrée d'une table de données et suspend le workflow jusqu'à ce qu'un certain ensemble d' Actions de formulaire soit terminé.

  1. Drag a Build Data Table activity into your workflow.

    1. Dans le champ de propriété TableDonnées , appuyez sur CTRL + k sur votre clavier et créez une variable System.DataTable . Pour cet exemple, nommez-le CodeReviews.
    2. Cliquer docs image. La fenêtre Créer une table de données s'ouvre.
    3. Renommez Column1 en ReviewerName et Column2 en ReviewerType. Définissez le Type de la colonne ReviewerType sur String.
    4. Ajoutez des données à l'intérieur des lignes de la table. Pour la colonne ReviewerType , cet exemple utilise deux types de réviseurs : les propriétaires de code et les réviseurs.

    docs image

  2. Drag an Assign activity into your workflow. This assigns a name to the data table you created. In the To property field, pass the System.DataTable variable and add .TableName property to it. In the Value field, press CTRL + k on your keyboard and create a String variable. For this example, name it DataTableName.

  3. Drag a Parallel For Each activity into your workflow. For this example, name it Create Tasks for PR Review.

    1. Dans le champ de propriété Valeurs , passez la variable System.DataTable et ajoutez la propriété .AsEnumerable. Pour cet exemple, transmettez l'expression suivante : CodeReviews.AsEnumerable.
  4. Faites glisser une activité Assign dans le Corps de l'activité Parallel For Each .

    1. Dans le champ de propriété À , appuyez sur CTRL + k sur votre clavier et créez une variable String qui contient les données extraites de la colonne ReviewerType de la table de données CodeReviews . Pour cet exemple, nommez la variable ReviewerType.
    2. Dans le champ de propriété Valeur , passez une expression qui récupère chaque élément de ligne de la colonne ReviewerType et le stocke dans la variable créée à l'intérieur du champ À . Pour cet exemple, transmettez l'expression suivante : ìtem("ReviewerType").toString.

    docs image

  5. Drag a Create Form Task activity into the Body of the Parallel For Each activity.

    1. Dans le champ de propriété TitreTâche , transmettez l'expression suivante : "Code Review - " + InPullRequestName. Le InPullRequestName est une variable String qui a la valeur par défaut "#1".
    2. Dans la propriété FormData(Collection) , créez quatre arguments de type String:
    3. 'AI Number' : avec la direction In et la valeur définie sur InPullRequestName.
    4. Reviewer Name : avec la direction In et la valeur définie sur item("ReviewerName").toString.
    5. Reviewer Type : avec la direction In/Out et la valeur définie comme variable ReviewerType .
    6. Reviewer Comment - avec la Direction Out. Dans le champ Valeur , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la ReviewerComments. Cet argument mappe le workflow, quels que soient les commentaires effectués dans l'action.
    7. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskPersistData.

    docs image

  6. Drag an Add To Collection activity into the body of the Parallel For Each activity. This activity stores all the Form Actions created into a list.

    1. Dans le champ de propriété Collection , appuyez sur CTRL + k sur votre clavier et créez une variable List<FormTaskData> . Nommez-la TaskDataList. Accédez au panneau Variables et définissez la valeur Par défaut de la variable sur New List(of UiPath.Persistence.Activities.FormTask.FormTaskData).
    2. Dans le champ de propriété Élément , transmettez la variable FormTaskData . Pour cet exemple, passez la variable TaskPersistData .
    3. Pour la propriété TypeArgument , choisissez UiPath.Persistence.Activities.FormTask.FormTaskData.
  7. In the Variables panel, create two variables of type Int32 and set their Default value to 0: OwnersApprovals and ReviewersApprovals.

  8. Faites glisser une autre activité Parallel For Each . Pour cet exemple, nommez-le Wait for Conditional Task(s) Completion.

    1. Dans le champ de propriété Condition , transmettez l'expression suivante : OwnersApprovals>=2 Or (OwnersApprovals = 1 And ReviewersApprovals>=2). Cela conditionne le workflow de reprendre uniquement lorsque la condition est remplie.
    2. Pour la propriété TypeArgument , choisissez UiPath.Persistence.Activities.FormTask.FormTaskData.
    3. Dans le champ de propriété Valeur , transmettez la liste dans laquelle les actions de formulaire sont stockées. Pour cet exemple, passez la variable TaskDataList .

    docs image

  9. Faites glisser une activité Sequence dans le Corps de l'activité Wait For Conditional Task(s) Completion . Renommez-la Wait for Task and Resume.

  10. Faites glisser une activité Wait for Form Task and Resume dans l’activité de séquence Wait for Task and Resume .

    1. Dans le champ de propriété TaskObject(Entrée) , passez la variable item .
    2. Dans le champ de propriété TaskAction , appuyez sur CTRL + k sur votre clavier et créez une variable String . Pour cet exemple, nommez-le TaskAction.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez-le TaskData.
  11. Drag an If activity into the Wait for Task and Resume sequence activity. This activity is meant to count the number of Form Actions that have been approved by code owners.

    1. Dans le champ de propriété Condition , saisissez l'expression suivante : TaskAction="approve" And ReviewerType="code owner".
    2. Glissez-déposez une activité de type Attribuer dans le bloc Puis . Dans le champ de propriété À , transmettez la variable OwnersApprovals . Dans le champ de propriété Valeur , saisissez l'expression OwnersApprovals + 1 .

    docs image

  12. Drag another If activity into the Wait for Task and Resume sequence activity. This activity is meant to count the number of Form Actions that have been approved by reviewers.

    1. Dans le champ de propriété Condition , saisissez l'expression suivante : TaskAction="approve" And ReviewerType="reviewer".
    2. Faites glisser une activité Assign dans le bloc Then . Dans le champ de propriété À , transmettez la variable ReviewersApprovals . Dans le champ de propriété Valeur , saisissez l'expression ReviewersApprovals + 1 .

    docs image

  13. Faites glisser trois activités Write Line dans l’activité Wait for Task and Resume . Cette activité affiche les valeurs données dans le panneau Sortie .

    1. Dans la première activité, transmettez la variable ReviewComments .
    2. Dans la deuxième activité, transmettez la variable OwnersApprovals et ajoutez la propriété .toString .
    3. Dans la troisième activité, transmettez la variable ReviewersApprovals et ajoutez la propriété .toString .

Attendre la fin de certaines tâches de formulaire

Cet extrait crée trois actions de formulaire et suspend le workflow jusqu'à ce que deux actions soient terminées.

  1. Drag a Create Form Task activity into your sequence workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle1. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 1".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver1".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData1.
  2. Drag a Create Form Activity into your sequence workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle2. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 2".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver2".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData2.
  3. Drag a Create Form Activity into your sequence workflow.

    1. Dans le champ de propriété TitreTâche , appuyez sur CTRL + k sur votre clavier et créez une variable String . Nommez-la TaskTitle3. Dans le panneau Variables , définissez la valeur Par défaut sur "Task - " + "Approver 3".
    2. Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type String et de Direction In. Nommez l'argument Approver et définissez la valeur sur "Approver3".
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL + k sur votre clavier et créez une variable FormTaskData . Pour cet exemple, nommez la variable TaskPersistData3.
  4. Drag a Parallel activity into your workflow.

    1. Dans le champ de propriété Condition , appuyez sur CTRL + k sur votre clavier et créez une variable Int32 . Pour cet exemple, nommez la variable CompleteTasksCount et définissez la valeur Par défaut sur 0.
    2. Dans l' Éditeur d'expression à l'intérieur de la propriété Condition , définissez la condition sur CompleteTasksCount=2. Cela conditionne l'activité Parallèle pour se terminer lorsque deux actions sur les trois sont terminées.

    docs image

  5. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task1.

  6. In the Sequence Task1 activity, drag a Wait For Form Task and Resume activity. Rename it as Wait for Form Task and Resume(Task1).

    1. Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable FormTaskData créée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variable TaskPersistData1 .
    2. Dans le champ de propriété ActionTâche , appuyez sur CTRL + k et créez une variable String . Nommez-la TaskAction1.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData1.

    docs image

  7. Drag a Write Line activity into the Action body of the Sequence Task1 activity. his activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction1 variable.

  8. Faites glisser une activité Assign dans l’activité Wait for Form Task and Resume(Task1) . Passez la CompleteTaskCount dans le champ À et l'expression CompleteTaskCount + 1 dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variable CompleteTaskCount .

    docs image

  9. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task2.

  10. Dans l'activité Sequence Task2 , glissez-déposez une activité Attendre la tâche de formulaire et reprendre . Le renommer en Wait for Form Task and Resume(Task2)

    1. Dans le champ de propriété TaskObject (Input), transmettez la variable FormTaskData créée pour stocker des données sur l'action de formulaire. Pour cet exemple, transmettez la variable TaskPersistData2.
    2. Dans le champ de propriété TaskAction , appuyez sur CTRL + ket créez une variable String. Nommez-la TaskAction2
    3. Dans le champ de propriété TaskObject(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData2.
  11. Drag a Write Line activity into the body of the Sequence Task2 activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction2 variable.

  12. Faites glisser une activité Assign dans l’activité Wait for Form Task and Resume(Task2) . Passez la CompleteTaskCountdans le champ À et l'expression CompleteTaskCount + 1dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variableCompleteTaskCount .

  13. Drag a Sequence activity into the body of the Parallel activity. Rename the activity as Sequence Task3.

  14. In the Sequence Task3 activity, drag and drop a Wait For Form Task and Resume activity. Rename it as Wait for Form Task and Resume(Task3).

    1. Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable FormTaskData créée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variable TaskPersistData3 .
    2. Dans le champ de propriété ActionTâche , appuyez sur CTRL + k et créez une variable String . Nommez-la TaskAction3.
    3. Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable FormTaskData . Nommez-la TaskData3.
  15. Drag a Write Line activity into the Action body of the Sequence Task3 activity. his activity is meant to display in the Output panel the action taken by the user to complete the Form Action. In the Text value, input the TaskAction3 variable.

  16. Faites glisser une activité Assign dans l’activité Wait for Form Task and Resume(Task3) . Passez la CompleteTaskCountdans le champ À et l'expression CompleteTaskCount + 1dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variableCompleteTaskCount .

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour