- Vue d'ensemble (Overview)
- Événements d'application
- Générateur de flowchart
- Notes de publication
- À propos des activités Flowchart Builder
- Compatibilité du projet
- Séquence (Sequence)
- Agent (Agent)
- Approbation humaine
- Règle métier
- Invoquer le workflow
- Activité
- Attendre le déclencheur
- Sous-processus
- Gestionnaire d’erreurs déconnecté
- Décision
- Commutateur (Switch)
- Fractionner
- Fusionner
- Espace réservé d’événement
- Resume After Delay
- Attendre un message
- Gestionnaire d’erreurs
- Terminer
- Throw
- Terminate
- Légende (Callout)
- Scénarios complexes
- Identifiants
- Data Service
- À propos du package d'activités Data Service
- Compatibilité du projet
- Créer un enregistrement d’entité
- Mettre à jour un enregistrement d’entité
- Supprimer un enregistrement d’entité
- Obtenir un enregistrement d’entité à partir d’un identifiant
- Rechercher des enregistrements d’entités
- Interroger plusieurs enregistrements d’entités
- Télécharger le fichier vers le champ d’enregistrement
- Télécharger le fichier à partir du champ d'enregistrement
- Supprimer le fichier à partir du champ d’enregistrement
- Créer plusieurs enregistrements d’entités
- Mettre à jour plusieurs enregistrements d’entités
- Supprimer plusieurs enregistrements d’entités
- Créer un enregistrement d’entité
- Supprimer un enregistrement d’entité
- Obtenir un enregistrement d’entité à partir d’un identifiant
- Rechercher des enregistrements d’entités
- Mettre à jour un enregistrement d’entité
- Télécharger le fichier vers le champ d’enregistrement
- Télécharger le fichier à partir du champ d'enregistrement
- Supprimer le fichier à partir du champ d’enregistrement
- Créer plusieurs enregistrements d’entités
- Mettre à jour plusieurs enregistrements d’entités
- Supprimer plusieurs enregistrements d’entités
- Formulaire
- Notes de publication
- Compatibilité du projet
- Formulaires en temps réel
- Mettre à jour les données du formulaire
- Exécuter des formulaires à l'aide de JavaScript
- Personnaliser des formulaires à l'aide de CSS
- Composants conditionnels
- Ajout de plusieurs composants sur la même ligne dans les colonnes
- Utilisation du composant Table de données (Data Table)
- Obtenir le chemin d'accès au fichier/dossier
- Lecture des valeurs de cellule à partir d'un composant Data Grid
- Affichage des fichiers PDF
- Affichage d'images dans les formulaires
- Faire défiler les grilles de données
- Utilisation des outils de développement avec des formulaires
- Calculer les valeurs des composants du formulaire
- Gestion des dates dans les formulaires
- Ouvrir des hyperliens dans des formulaires
- Affichage d'un onglet par défaut dans les formulaires
- Affichage du libellé complet d'un composant
- Recherche de longues chaînes dans des listes déroulantes
- Définir dynamiquement des valeurs de formulaire
- À propos de l'expérience de formulaire antérieure à la version 23.4
- Compatibilité du Projet
- Formulaires en temps réel
- Cases à cocher dynamiques
- Listes déroulantes conditionnelles
- Afficher un onglet par défaut
- Affichage des images
- Affichage des fichiers PDF
- Affichage de l'étiquette complète
- Éléments HTML dynamiques
- Gérer des dates
- Rechercher des chaînes longues dans des listes déroulantes
- Personnaliser des formulaires à l'aide de fichiers CSS locaux
- Exécuter le bloc Do sur changement de case à cocher
- Personnaliser la largeur des colonnes
- Mettre à jour les données du formulaire
- Réinitialiser les données de collecte
- Logique avancée
- Exécuter le bloc Do lors du changement d'option de la liste déroulante
- Lecture des valeurs de cellule à partir d'un composant Data Grid
- Composants conditionnels
- Faire défiler les composants Data Grid
- Utiliser le composant Grille
- Outils de développement
- Valeur calculée
- Listes déroulantes dynamiques
- Changer d'onglet en un clic
- Ouvrir des hyperliens dans un formulaire
- FTP
- IPC
- Pipelines d'Automation Ops
- Notes de publication
- À propos du package d'activités Pipelines
- Compatibilité du projet
- Activer le déploiement de solution
- Analyser
- Construire
- Cloner
- Delete Solution Package
- Deploy Solution
- Download Package
- Download Solution Package
- Download Solution Package Configuration
- Publier le package
- Publier le package de solution
- Resync Solution Project
- Run Existing Test Set
- Exécuter des tests
- Étape
- Désinstaller la solution
- Processus de mise à jour
- Charger le paquet de solutions
- Persistance
- Notes de publication
- Compatibilité du projet
- Concepteur de formulaires en série
- Start Job And Get Reference
- Wait for Job and Resume
- Add Queue Item And Get Reference
- Wait For Queue Item And Resume
- Wait for Form Task and Resume
- Reprendre après le délai
- Assign Tasks
- Create External Task
- Wait For External Task and Resume
- Terminer la tâche
- Forward Task
- Get Form Tasks
- Get Task Data
- Obtenir des tâches d’application
- Add Task Comment
- Update Task Labels
- Créer une tâche d'application
- Attendre la tâche d'application et reprendre (Wait For App Task and Resume)
- Configurer le minuteur de tâches (Configure task timer)
- Travailler avec des tâches d'application
- Création de votre première action de formulaire
- Commandes avancées pour les listes déroulantes
- Incorporation d'objets dans des actions de formulaire
- Autoriser les utilisateurs à charger des fichiers dans le compartiment de stockage
- Ajout d'une logique avancée à l'aide de Java Script
- Définition d'un onglet par défaut
- Suppression du bouton Supprimer de Modifier la grille à l'aide du CSS personnalisé
- Personnalisation des modèles de grille
- Utilisation de boutons pour déclencher une logique personnalisée
- Utilisation d'une mise en page de formulaire externe
- Développer dynamiquement les composants de formulaire en runtime
- Alignement du contenu d'un composant de formulaire de gauche à droite à l'aide des attributs JSON
- Exemple de workflows
- Système
- Notes de publication
- Compatibilité du projet
- Codage de caractères pris en charge
- Assistant Générateur de RegEx
- Ajouter une colonne de données (Add Data Column)
- Ajouter une ligne de données (Add Data Row)
- Ajouter les champs du journal (Add Log Fields)
- Add or Subtract from Date
- Ajouter un élément de transaction (Add Transaction Item)
- Ajouter un élément de file d'attente (Add Queue Item)
- Append Item to Collection
- Append Item to List
- Ajouter une ligne (Append Line)
- Bip (Beep)
- Boucle d'arrêt / sortie
- Browse for file
- Browse for folder
- Build Collection
- Créer une table de données (Build Data Table)
- Bulk Add Queue Items
- Modifier la casse du texte
- Change type
- Cocher Faux (Check False)
- Cocher Vrai (Check True)
- Supprimer la table de données (Clear Data Table)
- Collection to TableDonnées
- Commentaire (Comment)
- Compress/Zip Files
- Copier le fichier (Copy File)
- Copy Folder
- Combiner du texte
- Commenter/Activités désactivées
- Continuer / Ignorer actuel
- Créer le fichier (Create File)
- Créer un dossier (Create Folder)
- Create List
- Custom Input
- Supprimer (Delete)
- Delete File
- Delete Folder
- Supprimer le fichier de stockage
- Supprimer les éléments de file d'attente (Delete Queue Items)
- Désactiver le déclencheur local
- Faire pendant (Do While)
- Télécharger le fichier à partir de l'URL
- Télécharger le fichier de stockage
- Activer le déclencheur local
- Evaluate Business Rule
- Exists In Collection
- Extract/Unzip Files
- Extraire la date et l'heure du texte (Extract Date and Time from Text)
- Extraire le texte
- Déclencheur de changement de fichier (File Change Trigger)
- Le fichier existe déjà
- Filter Collection
- Filtrer la table de données (Filter Data Table)
- Folder Exists
- Pour chaque (For Each)
- For Each File In Folder
- Déclencheur de changement de fichier v3
- Rechercher et remplacer
- Trouver des modèles correspondants
- For Each Folder in Folder
- For Each Row in Data Table
- Formater la date en tant que texte
- Valeur de format (Format Value)
- Generate Data Table From Text
- Obtenir l'actif (Get Asset)
- Obtenir les informations d'identification / Obtenir les informations d'identification Orchestrator
- Get Current Job Info
- Récupérer le dossier d'environnement (Get Environment Folder)
- Récupérer la variable d'environnement (Get Environment Variable)
- Obtenir des informations sur les fichiers
- Get Folder Info
- Obtenir les tâches (Get Jobs)
- Récupérer les processus (Get Processes)
- Obtenir l'élément de ligne (Get Row Item)
- Obtient la ressource secrète
- Obtenir l'élément de transaction (Get Transaction Item)
- Récupérer le nom d'utilisateur/mot de passe
- Obtenir les éléments de file d'attente (Get Queue Items)
- Déclencheur de modification de variable globale
- Boîte de dialogue (Input Dialog)
- Appeler le code (Invoke Code)
- Appeler la méthode Com (Invoke Com Method)
- Appeler Power Shell (Invoke Power Shell)
- Invoke Process
- Invoke VBScript
- Appeler le fichier de flux de travail (Invoke Workflow File)
- Le texte correspond-il
- Tables de données de jointure (Join Data Tables)
- Processus d'arrêt forcé (Kill Process)
- Launch Workflow Interactive
- Répertorier les fichiers de stockage
- Consigner le message (Log Message)
- Table de données de recherche (Lookup Data Table)
- Manual Trigger
- Merge Collections
- Fusionner la table de données (Merge Data Table)
- Zone de message (Message Zone)
- Modify Date
- Modify Text
- Déplacer le fichier (Move File)
- Move Folder
- Multiple Assign
- Nouvel élément ajouté à la file d'attente
- Notifier la modification de la variable globale
- Requête HTTP Orchestrator
- Table de données de sortie (Output Data Table)
- Parallel
- Parallel For Each
- Le chemin d'accès existe (Path Exists)
- Différer l'élément de transaction (Postpone Transaction Item)
- Process End Trigger
- Process Start Trigger
- Étendue du suivi du processus
- Déclencher l'alerte (Raise Alert)
- Read List Item
- Lire le fichier texte
- Lire le texte de stockage
- Supprimer la colonne de données (Remove Data Column)
- Supprimer la ligne de données (Remove Data Row)
- Supprimer les lignes dupliquées (Remove Duplicate Rows)
- Remove From Collection
- Supprimer les champs du journal (Remove Log Fields)
- Replace Matching Patterns
- Repeat Number Of Times
- Répéter le déclencheur
- Rename File
- Rename Folder
- État du rapport (Report Status)
- Reset Timer
- Resume Timer
- Étendue de nouvelle tentative (Retry Scope)
- Retour
- Exécuter les déclencheurs locaux
- Run Agent
- Lancer l'exécution
- Run Parallel Process
- Définir l'actif (Set Asset)
- Envoyer une notification par e-mail
- Définir l'identifiant (Set Credential)
- Set Environment Variable
- Set Secret
- Set Task Status
- Set Trace Status
- Définir la progression de la transaction (Set Transaction Progress)
- Définir l'état de transaction (Set Transaction Status)
- Devrait s'arrêter (Should Stop)
- Fractionner le texte
- Trier la table de données (Sort Data Table)
- Start Timer
- Démarrer la tâche (Start Job)
- Arrêter la tâche (Stop Job)
- Arrêter les déclencheurs locaux
- Stop Timer
- Text to Left/Right
- Texte en majuscules/minuscules
- Déclencheur de temps
- Étendue du déclencheur
- Objet de suivi
- Timeout Scope
- Update Row Item
- Update List Item
- Télécharger le fichier de stockage
- Wait for Download
- Wait Queue Item
- While
- Workflow Placeholder
- Écrire le texte de stockage
- Écrire un fichier texte (Write Text File)
- Ajouter une ligne de données (Add Data Row)
- AddQueueItem
- Ajouter un élément de transaction (Add Transaction Item)
- Ajouter une ligne
- BulkAddQueueItems
- Supprimer la table de données (Clear Data Table)
- CompresserFichiersZip
- Copy File
- Create File
- Créer un dossier (Create Folder)
- Delete file or folder
- Delete Queue Items
- Supprimer le fichier de stockage
- Télécharger le fichier de stockage
- Extraire les fichiers de décompression
- Filtrer la table de données (Filter Data Table)
- Obtenir l'actif (Get Asset)
- Obtenir l'identifiant (Get Credential)
- GetJobs
- Get Queue Item
- GetQueueItems
- Obtenir la ressource pour le chemin d'accès local
- Obtenir l'élément de ligne (Get Row Item)
- Obtenir l'élément de transaction (Get Transaction Item)
- Invoke Process
- Tables de données de jointure (Join Data Tables)
- Répertorier les fichiers de stockage
- Table de données de recherche (Lookup Data Table)
- Fusionner la table de données (Merge Data Table)
- Move File
- Requête HTTP Orchestrator
- OutputDataTable
- Le chemin d'accès existe (Path Exists)
- Différer l'élément de transaction (Postpone Transaction Item)
- Lire le texte de stockage
- Lire le fichier texte
- Supprimer la colonne de données (Remove Data Column)
- Supprimer les lignes dupliquées (Remove Duplicate Rows)
- Remplacer (Replace)
- Définir l'actif (Set Asset)
- Définir l'identifiant (Set Credential)
- SetTransactionProgress
- Définir l'état de transaction (Set Transaction Status)
- Trier la table de données (Sort Data Table)
- Démarrer la tâche (StartJob)
- Arrêter la tâche (StopJob)
- Update Row Item
- Télécharger le fichier de stockage
- Wait Queue Item
- Écrire le texte de stockage
- Écrire un fichier texte
- Test
- Notes de publication
- À propos du package d'activités Testing
- Compatibilité du projet
- Le nom du cas de test n'est pas unique dans ce projet
- La convention d'affectation de noms du cas de test est incorrecte
- Vérifications manquantes dans le cas de test
- Workflows non testés
- Connecté à Test Manager
- Simulation inutilisée
- Cas de test sans annotation
- Le cas de test/workflow est trop complexe
- Le cas de test comprend trop de branches
- Paramètres du projet
- Add Test Data Queue Item
- Attach Document
- Bulk Add Test Data Queue Items
- Create Comparison Rule
- Comparer des documents PDF
- Comparer le texte
- Delete Test Data Queue Items
- Générer une adresse
- Générer un prénom
- Générer un nom de famille
- Générer une date aléatoire
- Générer un nombre aléatoire
- Générer une chaîne aléatoire
- Générer une valeur aléatoire
- Get Test Data Queue Item
- Get Test Data Queue Items
- Verify Control Attribute
- Verify Expression
- Verify Expression with Operator
- Verify Range
- Address
- AddTestDataQueueItem
- AttachDocument
- BulkAddTestDataQueueItems
- DeleteTestDataQueueItems
- GetTestDataQueueItem
- GetTestDataQueueItems
- GivenName
- LastName
- RandomDate
- RandomNumber
- RandomString
- RandomValue
- VerifyAreEqual
- VerifyAreNotEqual
- VerifyContains
- VerifyExpression
- VerifyExpressionWithOperator
- VerifyIsGreater
- VerifyIsGreaterOrEqual
- VerifyIsLess
- VerifyIsLessOrEqual
- VerifyIsRegexMatch
- VerifyRange
- Workflow Foundation
- À propos du package d’activités Workflow Foundation
- Attribuer/Définir la valeur de la variable
- Retard (Delay)
- Si (If)
- Sinon si
- Séquence / Groupe
- Commutateur (Switch)
- Décision de flux (Flow Decision)
- Commutateur de flux (Flow Switch)
- Diagramme de flux (Flowchart)
- Essayer de capturer
- Machine d'état (State Machine)
- État (State)
- Transition
- État final (Final State)
- Single Excel Process Scope
- No Persist Scope
- Cancellation Scope
- Ligne d'écriture (Write Line)

Activités de workflow
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é.
-
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
QueueItemDataseront renseignées avec les données récupérées à partir d'Orchestrator.- 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. - Dans le champ de propriété QueueItemObject(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeQueueItemDatapour 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 variableQueueItemDatanomméeQueueItemObject.

- 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
-
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.
-
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é.- Dans le champ de propriété Objet d'élément de file d'attente (Entrée) , transmettez la variable
QueueItemObjectpour référencer l'élément de file d'attente exact que vous souhaitez ajouter à Orchestrator. - Dans le champ de propriété Objet d'élément de file d'attente (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeQueueItemDatapour stocker les données sur l'élément de file d'attente après son traitement et sa récupération.
- Dans le champ de propriété Objet d'élément de file d'attente (Entrée) , transmettez la variable
-
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
Testvariable.
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.
-
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é.
-
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, etIn/Out. Définissez le Type surString. Pour le champ Valeur , appuyez surCTRL + Ksur votre clavier et créez trois variables, qui donnent des informations ( pour les arguments de typeIn) ou extraient des informations ( pour les arguments de typeOut).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.

Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeExternalTaskData. Pour cet exemple, nommez la variableTaskPersistData. Cet objetExternalTaskDataest 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. - InVariable - the Value of the argument of type
-
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.- 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.
- 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:
-
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é.- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable
ExternalTaskDatapour référencer la tâche externe exacte que vous avez créée. Pour cet exemple, passez la variableTaskPersistData. - Dans le champ de propriété Action de tâche , appuyez sur
CTRL + ksur votre clavier et créez une variable de type String et nommez-laTaskAction. Il stocke l’action entreprise par l’utilisateur pour terminer la tâche. - Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variable de typeDonnéesTâcheExternes et nommez-laTaskData. Cette variable stocke l'objet Tâche mis à jour récupéré à partir d'Orchestrator à la fin de l'action externe.
- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable
-
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.
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.
-
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é.
-
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, etIn/Out. Définissez le Type surString. Pour le champ Valeur , appuyez surCTRL + Ksur votre clavier et créez trois variables qui fournissent des informations (pour les arguments de typeIn) ou extraient des informations (pour les arguments de typeOut).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.

Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeFormTaskData. Pour cet exemple, nommez la variableTaskPersistData. Cet objetFormTaskDataest 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. - InVariable - the Value of the argument of type
-
Add any activities that you want to run before the workflow is suspended to retrieve data about the
FormTaskDataobject. 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. -
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.- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable
FormTaskDatapour référencer la tâche de formulaire exacte que vous avez créée dans Action Center. Pour cet exemple, passez la variableTaskPersistData. - Dans le champ de propriété Action de tâche , appuyez sur
CTRL + ksur votre clavier et créez une variable de type String et nommez-laTaskAction. Il stocke l’action entreprise par l’utilisateur pour terminer la tâche. - Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de type FormTaskData et nommez-laTaskData. Cette variable stocke l'objet Tâche mis à jour récupéré à partir d'Orchestrator à la fin de la tâche.
- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable
-
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é.
-
Drag two Create External Task activities into your workflow.
-
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 + ksur votre clavier et créez une variable de typeExternalTaskData. Pour cet exemple, nommez-leTask1PersistData. -
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 + ksur votre clavier et créez une variable de typeExternalTaskData. Pour cet exemple, nommez-leTask2PersistData.
-
-
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
icône. - Cliquez sur Affichage classique. L'activité se trouve dans les activités par défaut > Programmation > Collection.
-
Dans les champs de propriété Collection , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeList<TaskUserAssignment>et nommez-laTaskAssignementsInput. Accédez au panneau Variables et initialisez la variable dans le champ Par défaut en tant quenew List(Of TaskUserAssignment. -
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 :- The
new 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.

- The
-
Définissez la propriété TypeArgument sur
System.Collections.Generic.List<UiPath.Persistence.Activities.Tasks.TaskUserAssignment>.
-
Drag an Assign Tasks activity into your workflow.
-
Dans le champ de propriété TaskUserAssigns (Entrée) , transmettez la variable
List<TaskUserAssignment>. Pour cet exemple, passez la variableTaskAssignmentsInput. -
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. -
Dans le champ de propriété ÉchecAffectationsTâches (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeList<TaskAssignmentResponse>et nommez-laFailedTaskAssignmentsOutput.
-
-
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.Countet.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.
- 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é.
-
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 +ksur votre clavier et créez une variable de typeStringet nommez-laProcessName. 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.
-
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
OutetIn/Outen 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 TypeString, nomméTest, de DirectionIn/Out. Dans le champ Valeur , appuyez surCTRL + ksur votre clavier et créez une variable de typeString. Nommez la variableTest.
-
Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeJobData, nomméeJobPersistenceData. 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 .
-
- 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. - 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.
- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable de type
JobDatacréée pour l'activité Démarrer la tâche et obtenir une référence . Pour cet exemple, passez la variableJobPersistenceData. Cela indique au robot la tâche exacte qui doit être terminée jusqu'à la reprise du workflow. - Dans le champ de propriété Objet de tâche (Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeJobData. Pour cet exemple, nommez-leJobDataObject.
- Dans le champ de propriété Objet de tâche (Entrée) , transmettez la variable de type
- 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.
-
Ajoutez les activités que vous souhaitez exécuter avant la suspension du workflow.
-
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é.
- Dans le panneau Variables , créez une variable de type
System.TimeSpan. Pour cet exemple, nommez la variableOneHour. Définissez la valeur Par défaut de la variableTimeSpansurNew TimeSpan(1,0,0). - Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression
DateTime.Nowet la variableTimeSpan. Pour cet exemple, transmettez l'expression suivante :DateTime.Now + OneHour.

- Dans le panneau Variables , créez une variable de type
-
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.
-
Faites glisser les activités que vous souhaitez exécuter avant la suspension du workflow.
-
Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.
- Dans le panneau Variables , créez une variable de type
System.TimeSpan. Pour cet exemple, nommez la variableFiveMinute. Définissez la valeur Par défaut de la variableTimeSpansurNew TimeSpan(0,5,0). - Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression
DateTime.Nowet la variableTimeSpan. Pour cet exemple, transmettez l'expression suivante :DateTime.Now + FiveMinute.

- Dans le panneau Variables , créez une variable de type
-
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.
-
Ajoutez les activités que vous souhaitez exécuter avant la suspension du workflow.
-
Drag a Resume After Delay activity into your workflow. This activity suspends the given workflow and resumes it at a specified date and time.
- Dans le panneau Variables , créez une variable de type
System.TimeSpan. Pour cet exemple, nommez la variableNinetySeconds. Définissez la valeur Par défaut de la variableTimeSpansurNew TimeSpan(0,0,90). - Dans le champ de propriété Heure de reprise de l'activité, transmettez l'expression
DateTime.Nowet la variableTimeSpan. Pour cet exemple, transmettez l'expression suivante :DateTime.Now + NinetySeconds.

- Dans le panneau Variables , créez une variable de type
-
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.
-
Faites glisser une activité BuildDataTable vers votre workflow.
- Dans le champ de propriété Sortie , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeDataTablepour stocker la table de données que vous créez. Pour cet exemple, nommez la variableDataTablesous la formeHighValueInvoices. - Cliquer
. La fenêtre Créer une table de données s'ouvre. - Renommez
Column1enInvoiceNumberetColumn2enInvoiceAmount. - Ajoutez des données à l'intérieur des lignes de la table et appuyez sur OK.

- Dans le champ de propriété Sortie , appuyez sur
-
Faites glisser une activité Assign dans votre workflow. Cette activité attribue un nom à la table de données, stocké dans une variable
String.- Dans le champ de propriété À , transmettez la variable
DataTable. Pour cet exemple, passez la variableHighValueInvoices. - Dans le champ de propriété Valeur , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeString. Pour cet exemple, nommez-leDataTableName. Définissez la valeur Par défaut de la variableDataTableNamesur ``"invoices"`.
- Dans le champ de propriété À , transmettez la variable
-
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, passezHighValueInvoices.Rows. Cela permet de parcourir chaque ligne de la table de données. -
Drag a Create Form Task activity inside the Body of the For Each activity.
- 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ùInvoiceNumberest le nom de la colonne contenant le numéro respectif pour chaque facture. - 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
Stringet définissez la Direction surIn. 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ùInvoiceAmountest le nom de la colonne contenant le montant respectif pour chaque facture. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variable de typeFormTaskData. Pour cet exemple, nommez la variableTaskPersistData.

- 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 :
-
Drag an Add To Collection activity inside the Body of the For Each activity.
- Dans le champ de propriété Collection , appuyez sur
CTRL + ksur votre clavier et créez une variableList<FormTaskData>et nommez-laTaskList. Accédez au panneau Variables et initialisez la variable dans le champ Par défaut en tant queNew List(Of UiPath.Persistence.Activities.FormTask.FormTaskData. - 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 variableTaskPersistData. - Pour la propriété TypeArgument , choisissez
UiPath.Persistence.Activities.FormTask.FormTaskData.
- Dans le champ de propriété Collection , appuyez sur
-
Drag a Parallel For Each activity into your workflow.
- Pour la propriété TypeArgument , choisissez
UiPath.Persistence.Activities.FormTask.FormTaskData. - Dans le champ de propriété Valeurs , transmettez la variable
List<FormTaskData>. Pour cet exemple, passez la variableTaskList.
- Pour la propriété TypeArgument , choisissez
-
Faites glisser une activité Wait for Form Task and Resume dans le corps de l'activité Parallel For Each .
- 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'objetitemreprésente les actions de formulaire stockées dans la variableTaskList. - Dans le champ de propriété TaskAction , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Pour cet exemple, nommez-leTaskAction. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez-leTaskData.

- Dans le champ de propriété TaskObject(Entrée) , entrez l'objet
-
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
TaskActionvariable.
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.
-
Drag a Create Form Task activity into your sequence workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle1. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 1". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver1". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData1.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a second Create Form Task activity into your workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle2. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 2". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver2". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData2.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a third Create Form Task activity into your workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle3. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 3". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver3". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData3.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a Pick activity into your workflow.
-
Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as
Pick Branch (Task1). -
Drag a Wait For Form Task And Resume activity into the Trigger body of the
Pick Branch (Task1)activity.- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
FormTaskDatacréée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variableTaskPersistData1. - Dans le champ de propriété ActionTâche , appuyez sur
CTRL + ket créez une variableString. Nommez-laTaskAction1. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskData1.
- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
-
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 theTaskAction1variable.
-
Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as
Pick Branch (Task2). -
Drag a Wait For Form Task And Resume activity into the Trigger body of the
Pick Branch (Task2)activity.- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
FormTaskDatacréée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variableTaskPersistData2. - Dans le champ de propriété ActionTâche , appuyez sur
CTRL + ket créez une variableString. Nommez-laTaskAction2. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskData2.
- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
-
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 theTaskAction2variable. -
Drag a Pick Branch activity into the body of the Pick activity. Rename the activity as
Pick Branch (Task3). -
Drag a Wait For Form Task And Resume activity into the Trigger body of the
Pick Branch (Task3)activity.- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
FormTaskDatacréée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variableTaskPersistData3. - Dans le champ de propriété ActionTâche , appuyez sur
CTRL + ket créez une variableString. Nommez-laTaskAction3. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskData3.
- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
-
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 theTaskAction3variable.
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é.
-
Drag a Build Data Table activity into your workflow.
- Dans le champ de propriété TableDonnées , appuyez sur
CTRL + ksur votre clavier et créez une variableSystem.DataTable. Pour cet exemple, nommez-leCodeReviews. - Cliquer
. La fenêtre Créer une table de données s'ouvre. - Renommez
Column1enReviewerNameetColumn2enReviewerType. Définissez le Type de la colonneReviewerTypesurString. - 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.

- Dans le champ de propriété TableDonnées , appuyez sur
-
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.DataTablevariable and add.TableNameproperty to it. In the Value field, pressCTRL + kon your keyboard and create aStringvariable. For this example, name itDataTableName. -
Drag a Parallel For Each activity into your workflow. For this example, name it
Create Tasks for PR Review.- Dans le champ de propriété Valeurs , passez la variable
System.DataTableet ajoutez la propriété.AsEnumerable. Pour cet exemple, transmettez l'expression suivante :CodeReviews.AsEnumerable.
- Dans le champ de propriété Valeurs , passez la variable
-
Faites glisser une activité Assign dans le Corps de l'activité Parallel For Each .
- Dans le champ de propriété À , appuyez sur
CTRL + ksur votre clavier et créez une variableStringqui contient les données extraites de la colonneReviewerTypede la table de donnéesCodeReviews. Pour cet exemple, nommez la variableReviewerType. - Dans le champ de propriété Valeur , passez une expression qui récupère chaque élément de ligne de la colonne
ReviewerTypeet le stocke dans la variable créée à l'intérieur du champ À . Pour cet exemple, transmettez l'expression suivante :ìtem("ReviewerType").toString.

- Dans le champ de propriété À , appuyez sur
-
Drag a Create Form Task activity into the Body of the Parallel For Each activity.
- Dans le champ de propriété TitreTâche , transmettez l'expression suivante :
"Code Review - " + InPullRequestName. LeInPullRequestNameest une variableStringqui a la valeur par défaut"#1". - Dans la propriété FormData(Collection) , créez quatre arguments de type
String: - 'AI Number' : avec la direction
Inet la valeur définie surInPullRequestName. Reviewer Name: avec la directionInet la valeur définie suritem("ReviewerName").toString.Reviewer Type: avec la directionIn/Outet la valeur définie comme variableReviewerType.Reviewer Comment- avec la DirectionOut. Dans le champ Valeur , appuyez surCTRL + ksur votre clavier et créez une variableString. Nommez-laReviewerComments. Cet argument mappe le workflow, quels que soient les commentaires effectués dans l'action.- Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskPersistData.

- Dans le champ de propriété TitreTâche , transmettez l'expression suivante :
-
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.
- Dans le champ de propriété Collection , appuyez sur
CTRL + ksur votre clavier et créez une variableList<FormTaskData>. Nommez-laTaskDataList. Accédez au panneau Variables et définissez la valeur Par défaut de la variable surNew List(of UiPath.Persistence.Activities.FormTask.FormTaskData). - Dans le champ de propriété Élément , transmettez la variable
FormTaskData. Pour cet exemple, passez la variableTaskPersistData. - Pour la propriété TypeArgument , choisissez
UiPath.Persistence.Activities.FormTask.FormTaskData.
- Dans le champ de propriété Collection , appuyez sur
-
In the Variables panel, create two variables of type
Int32and set their Default value to0:OwnersApprovalsandReviewersApprovals. -
Faites glisser une autre activité Parallel For Each . Pour cet exemple, nommez-le
Wait for Conditional Task(s) Completion.- 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. - Pour la propriété TypeArgument , choisissez
UiPath.Persistence.Activities.FormTask.FormTaskData. - 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.

- Dans le champ de propriété Condition , transmettez l'expression suivante :
-
Faites glisser une activité Sequence dans le Corps de l'activité Wait For Conditional Task(s) Completion . Renommez-la
Wait for Task and Resume. -
Faites glisser une activité Wait for Form Task and Resume dans l’activité de séquence Wait for Task and Resume .
- Dans le champ de propriété TaskObject(Entrée) , passez la variable
item. - Dans le champ de propriété TaskAction , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Pour cet exemple, nommez-leTaskAction. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez-leTaskData.
- Dans le champ de propriété TaskObject(Entrée) , passez la variable
-
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.
- Dans le champ de propriété Condition , saisissez l'expression suivante :
TaskAction="approve" And ReviewerType="code owner". - 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'expressionOwnersApprovals + 1.

- Dans le champ de propriété Condition , saisissez l'expression suivante :
-
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.
- Dans le champ de propriété Condition , saisissez l'expression suivante :
TaskAction="approve" And ReviewerType="reviewer". - 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'expressionReviewersApprovals + 1.

- Dans le champ de propriété Condition , saisissez l'expression suivante :
-
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 .
- Dans la première activité, transmettez la variable
ReviewComments. - Dans la deuxième activité, transmettez la variable
OwnersApprovalset ajoutez la propriété.toString. - Dans la troisième activité, transmettez la variable
ReviewersApprovalset ajoutez la propriété.toString.
- Dans la première activité, transmettez la variable
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.
-
Drag a Create Form Task activity into your sequence workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle1. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 1". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver1". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData1.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a Create Form Activity into your sequence workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle2. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 2". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver2". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData2.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a Create Form Activity into your sequence workflow.
- Dans le champ de propriété TitreTâche , appuyez sur
CTRL + ksur votre clavier et créez une variableString. Nommez-laTaskTitle3. Dans le panneau Variables , définissez la valeur Par défaut sur"Task - " + "Approver 3". - Dans la propriété DonnéesFormulaire(Collection) , créez un argument de Type
Stringet de DirectionIn. Nommez l'argumentApproveret définissez la valeur sur"Approver3". - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL + ksur votre clavier et créez une variableFormTaskData. Pour cet exemple, nommez la variableTaskPersistData3.
- Dans le champ de propriété TitreTâche , appuyez sur
-
Drag a Parallel activity into your workflow.
- Dans le champ de propriété Condition , appuyez sur
CTRL + ksur votre clavier et créez une variableInt32. Pour cet exemple, nommez la variableCompleteTasksCountet définissez la valeur Par défaut sur0. - 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.

- Dans le champ de propriété Condition , appuyez sur
-
Drag a Sequence activity into the body of the Parallel activity. Rename the activity as
Sequence Task1. -
In the
Sequence Task1activity, drag a Wait For Form Task and Resume activity. Rename it asWait for Form Task and Resume(Task1).- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
FormTaskDatacréée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variableTaskPersistData1. - Dans le champ de propriété ActionTâche , appuyez sur
CTRL + ket créez une variableString. Nommez-laTaskAction1. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskData1.

- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
-
Drag a Write Line activity into the Action body of the
Sequence Task1activity. 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 theTaskAction1variable. -
Faites glisser une activité Assign dans l’activité
Wait for Form Task and Resume(Task1). Passez laCompleteTaskCountdans le champ À et l'expressionCompleteTaskCount+ 1 dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variableCompleteTaskCount.
-
Drag a Sequence activity into the body of the Parallel activity. Rename the activity as
Sequence Task2. -
Dans l'activité
Sequence Task2, glissez-déposez une activité Attendre la tâche de formulaire et reprendre . Le renommer enWait for Form Task and Resume(Task2)- 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. - Dans le champ de propriété TaskAction , appuyez sur
CTRL + ket créez une variable String. Nommez-la TaskAction2 - Dans le champ de propriété TaskObject(Sortie) , appuyez sur CTRL+ k sur votre clavier et créez une variable
FormTaskData. Nommez-laTaskData2.
- 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
-
Drag a Write Line activity into the body of the
Sequence Task2activity. This activity displays in the Output panel the action taken by the user to complete the Form Action. In the Text value, input theTaskAction2variable. -
Faites glisser une activité Assign dans l’activité
Wait for Form Task and Resume(Task2). Passez laCompleteTaskCountdans le champ À et l'expressionCompleteTaskCount + 1dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variableCompleteTaskCount. -
Drag a Sequence activity into the body of the Parallel activity. Rename the activity as
Sequence Task3. -
In the
Sequence Task3activity, drag and drop a Wait For Form Task and Resume activity. Rename it asWait for Form Task and Resume(Task3).- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
FormTaskDatacréée pour stocker les données sur l'action de formulaire. Pour cet exemple, passez la variableTaskPersistData3. - Dans le champ de propriété ActionTâche , appuyez sur
CTRL + ket créez une variableString. Nommez-laTaskAction3. - Dans le champ de propriété ObjetTâche(Sortie) , appuyez sur
CTRL+ ksur votre clavier et créez une variableFormTaskData. Nommez-laTaskData3.
- Dans le champ de propriété ObjetTâche (Entrée) , transmettez la variable
-
Drag a Write Line activity into the Action body of the
Sequence Task3activity. 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 theTaskAction3variable. -
Faites glisser une activité Assign dans l’activité
Wait for Form Task and Resume(Task3). Passez laCompleteTaskCountdans le champ À et l'expressionCompleteTaskCount + 1dans le champ Valeur . Si l'action est terminée et que le workflow reprend, une nouvelle itération est ajoutée à la variableCompleteTaskCount.
- Ajouter un élément de la file d'attente et Attendre la fin
- Créer une tâche externe et Suspendre jusqu'à la fin
- Créer une tâche de formulaire et Suspendre jusqu'à la fin
- Créer une tâche et affecter à un utilisateur
- Démarrer la tâche et reprendre une fois la tâche terminée
- Suspendre et reprendre après 1 heure
- Suspendre et reprendre après 5 minutes
- Suspendre et reprendre après 90 secondes
- Attendre la fin de toutes les tâches de formulaire
- Attendre la fin d'une tâche de formulaire
- Attendre l'achèvement de certaines tâches de formulaire dans la boucle
- Attendre la fin de certaines tâches de formulaire