- Notes de publication
- Démarrage
- Paramétrage et configuration
- Projets d'automatisation
- À propos de la publication de projets d'automatisation
- Chargement des services Web dans les bibliothèques
- Activité générées à partir des services Web
- Conception d'automatisations
- Gérer les package d’activités
- Configuration des paramètres du projet d'activité
- Signature de paquets
- Gouvernance
- Import des entités
- Lier un projet à une idée dans Automation Hub
- Utilisation du gestionnaire de données
- Dépendances
- Types de workflows
- Flux de contrôle
- Comparaison de fichiers
- Meilleures pratiques d'automatisation
- Intégration du contrôle de code source
- À propos du contrôle de version
- Gestion de projets à l'aide de TFS
- Gestion de projets à l'aide de SVN
- Diff de workflow
- Débogage
- Journalisation
- L'outil de diagnostic (Diagnostic Tool)
- Analyseur de workflow
- À propos de l'analyseur de workflow
- ST-NMG-001 - Convention d'affectation de noms des variables
- ST-NMG-002 - Convention d'affectation de noms des arguments
- ST-NMG-004 - Duplication du nom complet
- ST-NMG-005 - La variable remplace une autre
- ST-NMG-006 - La variable remplace l'argument
- ST-NMG-008 - Longueur de variable dépassée
- ST-NMG-009 - Ajouter un préfixe aux variables DataTable
- ST-NMG-011 - Ajouter un préfixe aux arguments Datatable
- ST-NMG-012 - Valeurs par défaut de l'argument
- ST-NMG-016 : longueur d'argument dépassée
- ST-NMG-017 : le nom de la classe correspond à l’espace de noms par défaut
- ST-DBP-002 - Nombre élevé d'arguments
- ST-DBP-003 - Bloc d'interception vide
- ST-DBP-007 - Plusieurs couches de l'organigramme
- ST-DPB-010 : plusieurs instances de [workflow] ou [cas de test]
- ST-DBP-020 - Propriétés de sortie non définies
- ST-DBP-021 - Délai d'expiration codé en dur
- ST-DBP-023 : Workflow vide
- ST-DBP-024 - Vérification de l’activité de persistance
- ST-DBP-025 - Condition préalable à la sérialisation des variables
- ST-DBP-026 - Utilisation de l’activité Délai
- ST-DBP-027 - Pratiques exemplaires de persistance
- ST-DBP-028 - Condition préalable à la sérialisation des arguments
- ST-MRD-002 - Valeurs par défaut des noms d'activités
- ST-MRD-004 - Activités inaccessibles
- ST-MRD-005 - Séquences redondantes
- ST-MRD-007 - Clauses If imbriquées
- ST-MRD-008 - Séquence vide
- ST-MRD-009 - Activités profondément imbriquées
- ST-MRD-011 - Utilisation de la ligne d'écriture
- ST-MRD-017 - Incomplet si (Incomplete If)
- ST-USG-005 - Arguments d'activité codée en dur
- ST-USG-009 - Variables inutilisées
- ST-USG-010 - Dépendances inutilisées
- ST-USG-014 - Restrictions sur les paquets (Package Restriction)
- ST-USG-017 - Modificateur de paramètre non valide
- ST-USG-020 - Nombre minimum de messages consignés
- ST-USG-024 - Non utilisé, sauvegardé pour plus tard (Unused Saved for Later)
- ST-USG-025 - Utilisation abusive de la valeur enregistrée (Saved Value Misuse)
- ST-USG-026 - Restrictions d'activité (Activity Restrictions)
- ST-USG-027 - Packages requis
- ST-USG-028 - Restreindre l'invocation des modèles de fichier
- ST-USG-027 - Balises requises
- ST-USG-034 – URL Automation Hub
- Variables
- Arguments
- Noms d'espace importés
- Automatisations codées
- Introduction
- Enregistrement de services personnalisés
- Contextes Avant (Before) et Après (After)
- Génération du code
- Génération de cas de test codé à partir de cas de test manuels
- Intégration d'OpenAI avec des workflows codés
- Demander un prêt auprès de UiBank
- Génération de files d'attente avec workflows codés et API Orchestrator
- Utilisation de projets de bibliothèque importés dans des automatisations codées
- Utilisation de l’authentification à deux facteurs dans des automatisations codées
- Automatisation Attended basée sur déclencheur
- Réf. d’objets
- Outil ScreenScrapeJavaSupport
- Extensions
- À propos des extensions
- Outil SetupExtensions
- UiPathRemoteRuntime.exe n'est pas en cours d'exécution dans la session distante
- UiPath Remote Runtime bloque la fermeture de la session Citrix
- UiPath Remote Runtime provoque une fuite de mémoire
- Le package UiPath.UIAutomation.Activities ne correspond pas aux versions d’UiPath Remote Runtime
- L'extension UiPath requise n'est pas installée sur la machine distante
- Paramètres de résolution d’écran
- Stratégies de groupe
- Impossible de communiquer avec le navigateur
- L’extension Chrome est automatiquement supprimée
- L'extension a peut-être été corrompue
- Vérification de l'installation et de l'activation de l'extension pour Chrome
- Vérifiez si ChromeNativeMessaging.exe est en cours d’exécution
- Vérifier si la variable ComSpec est correctement définie
- Activez l’accès aux URL de fichiers et au mode navigation privée
- Profils de navigateur multiples
- Group Policy conflict
- Problèmes connus spécifiques aux extensions MV3
- Liste des extensions pour Chrome
- Extension Chrome sur Mac
- Stratégies de groupe
- Impossible de communiquer avec le navigateur
- L’extension Edge est automatiquement supprimée
- L'extension a peut-être été corrompue
- Vérification si l'extension pour Microsoft Edge est installée et activée
- Vérifiez si ChromeNativeMessaging.exe est en cours d’exécution
- Vérifier si la variable ComSpec est correctement définie
- Activation de l'accès aux URL de fichiers et au mode navigation privée
- Profils de navigateur multiples
- Group Policy conflict
- Problèmes connus spécifiques aux extensions MV3
- Liste des extensions pour Edge
- Extension pour Safari
- Extension pour VMware Horizon
- Extension pour Amazon WorkSpaces
- Plug-in du gestionnaire de solution SAP
- Complément Excel
- Tests Studio
- Résolution des problèmes
- À propos de la résolution des problèmes
- Erreurs de compilation de l’assembly
- Prise en charge et limitations de Microsoft App-V
- Résolution des problèmes rencontrés avec Internet Explorer x64
- Problèmes rencontrés avec Microsoft Office
- Identification des éléments d'IU dans PDF avec options d'accessibilité
- Réparation de la prise en charge d'Active Accessibility
- La validation des projets volumineux hérités depuis Windows prend plus de temps que prévu

Guide de l'utilisateur de Studio
Chargement des services Web dans les bibliothèques
Studio peut générer des activités directement à partir des services Web SOAP ou REST, ou des collections Postman via la fenêtre Éditeur de service.
Services Web SOAP et REST
La fenêtre permet de charger automatiquement toutes les méthodes ou tous les points de terminaison dans un service Web donné, que ce soit REST ou SOAP, tant que le lien fourni inclut la définition des services : Swagger ou WSDL.
Une fois chargée, vous sélectionnez à partir de quels points de terminaison ou de quelles méthodes les activités doivent être créées automatiquement. Tous les éléments sélectionnés sont affichés dans le panneau Activités (Activities), sous l'Espace de noms (Namespace) que vous avez fourni dans la fenêtre Éditeur de service (Service Editor).
Il est possible ensuite d'empaqueter ces bibliothèques en tant que fichier .nupkg et de le publier dans Orchestrator ou à un emplacement personnalisé. Par conséquent, vous pouvez partager facilement votre activité récemment définie avec d'autres développeurs avec lesquels vous travaillez.
Les services Web SOAP ne sont pas pris en charge dans les projets Windows et multiplateformes. Vous ne pouvez utiliser cette intégration que dans les projets Windows – Legacy.
Ajout de services
Suivez les étapes ci-dessous pour générer des activités depuis les services Web :
-
Créez une bibliothèque dans Studio, comme expliqué dans la page À propos des bibliothèques.
-
Dans l'onglet Conception (Design), cliquez sur Nouveau service (New Service), ou cliquez avec le bouton droit sur Services (Services) dans le panneau Projet (Project), puis cliquez sur Nouveau service (New Service). La fenêtre Éditeur de service (Service Editor) s'affiche.

-
Ajoutez un chemin d'accès au fichier ou un lien vers la ressource Swagger ou WSDL. Cliquez sur Charger (Load). Tous les points de terminaison définis à partir du service Web sont désormais chargés dans la fenêtre Éditeur de service (Service Editor).

-
Entrez la méthode ou l'opération requise dans la zone de recherche Opérations de recherche (Search Operations) et affichez les résultats ci-dessous. Pour Swagger, les méthodes sont marquées avec des couleurs différentes dans chaque point de terminaison. Utilisez la case Tout désélectionner (Deselect All) pour désélectionner tous les points de terminaison et choisir ceux à charger. L'espace de noms est généré automatiquement. Entrez simplement un nouveau nom pour le modifier.
-
Cliquez sur Enregistrer (Save). Le service est désormais intégré à l'arborescence de projets.

-
Pour utiliser les activités générées dans le panneau Concepteur (Designer), accédez au panneau Activités (Activities), recherchez par l'espace de noms du service dans la section des activités Disponibles (Available) et faites glisser chaque activité dans le panneau.
Remarque :Pour les services SOAP, il est recommandé de ne charger que les clients SOAP, contrairement aux clients
HttpGetouHttpPost. Pour les services Swagger, lorsque le service ne peut pas désérialiser la réponse du serveur, il est recommandé d’inspecter le schéma Swagger et de rechercher les propriétés requises dans les définitions du modèle.Pour modifier un service, cliquez simplement avec le bouton droit sur le service dans le panneau Projet (Project), sous Services (Services) et sélectionnez Modifier le service (Edit Service).
Notez que si votre projet est sous le contrôle de code source, l'extraction seule du fichier project.json de la bibliothèque active l'option Modifier les services (Edit Services) pour les fichiers .xaml avec les services Web SOAP ou REST chargés.
L'ajout et la modification d'un service sont également reflétés dans le fichier project.json contenant la définition de la bibliothèque, et dans le document du service. Un nœud webServices est ajouté dans le fichier project.json, et chaque service est identifié par les éléments suivants :

| Paramètre | Description |
|---|---|
namespace | Nom du service fourni dans la fenêtre Éditeur de service (Service Editor). |
serviceDocument | Le chemin d'accès au fichier .json contenant des métadonnées pour le service SOAP ou Swagger. Le fichier est utilisé lorsque le service est réparé, et doit être avec version dans le cadre du projet. |
webDocumentUri | Chemin d'accès au fichier ou lien vers la ressource Swagger ou SOAP (fourni lors de la création du service dans la fenêtre Éditeur de service (Service Editor)). |
uniqueReference | Une référence nécessaire au contrôle de version du service. |
Réparation des services
Les fichiers dll générés à partir de services Web SOAP ou REST ne sont pas transférés vers les référentiels de contrôle de code source. Par conséquent, lors de l'extraction de bibliothèques contenant des services, les projets contiennent des activités non résolues dans le panneau Concepteur (Designer).
Pour réparer ces activités et générer à nouveau le fichier .dll du service, cliquez avec le bouton droit sur le nœud du service dans le panneau Projet (Project) et sélectionnez Réparer le service (Repair Service) dans le menu contextuel.

Les métadonnées du service SOAP ou REST et d'autres informations sont stockées dans un fichier .json pour chaque service chargé dans Studio. Si un service chargé n'est associé à aucun fichier .json, l'option de menu contextuel Services de réparation (Repair Services) du nœud Services (Services) permet de générer les fichiers .json manquants à l'aide du lien vers le descripteur du document Web fourni lors de la création de ce service. Par conséquence, les filtres qui auraient pu être appliqués lors de la première génération du service ne sont plus appliqués. Toutes les ressources fournies par le chemin d'accès ou le lien susmentionné sont importées.
La publication des bibliothèques à l'aide de l'interface utilisateur de ligne de commande UiPath.Studio.CommandLine.exe détaillée dans la page Paramètres de ligne de commande de mise à jour de masse ne prend pas en compte les services Web.
Les activités générées depuis les services SOAP ou REST ne peuvent pas être localisées dans Studio.
Pour appeler plusieurs fois des activités générées à partir de services Web dans une boucle, créez un workflow distinct à partir du fichier de bibliothèque principal et invoquez la méthode de service. Dans le workflow principal, utilisez l'activité Invoke Workflow File à l'intérieur d'une activité For Each, et invoquez le workflow créé précédemment.
Pour plus d’informations sur les activités générées depuis les services Web, consultez la section Activités générées depuis les services Web.
Importation d'espaces de noms
Studio v2020.4 apporte un changement radical en termes de bibliothèques avec des services Swagger importés. La façon dont Studio interprète les fichiers .json des services Swagger a changé, générant ainsi des problèmes de rétrocompatibilité si et seulement si un service existant est modifié à partir de la fenêtre Éditeur de service.
Dans l’exemple suivant, nous avons illustré le changement en utilisant le service Web de démo Petstore.
Avant studio v2020.4, après avoir ajouté le service à un projet de bibliothèque, et en utilisant le menu contextuel « Parcourir pour les types ... », les espaces de noms suivants se trouvent dans le nom d’assemblage SwaggerPetstore :

En explorant dans UiPath.WebClient._ClientNamespace, les types suivants peuvent être trouvés :

Par conséquent, si l’activité AddPet avait été utilisée dans un fichier xaml à partir d’une bibliothèque Studio, elle aurait fait partie du UiPath.WebClient._ClientNamespace. Le type _ClientAddPetRequest a été utilisé pour générer une demande, comme dans l’extrait ci-dessous:
xmlns:uw_="clr-namespace:UiPath.WebClient.<em>ClientNamespace;assembly=SwaggerPetstore"
...
<uw</em>:AddPetActivity BearerToken="{x:Null}" ClientCertificate="{x:Null}" ClientCertificatePassword="{x:Null}" Headers="{x:Null}" OAuth2Token="{x:Null}" Password="{x:Null}" Username="{x:Null}" DisplayName="AddPet" Endpoint="["https://petstore.swagger.io/v2"]" sap:VirtualizedContainerService.HintSize="200,22.4" sap2010:WorkflowViewState.IdRef="AddPetActivity_1" TimeoutMS="30000">
<uw_:AddPetActivity.Request>
<uw_:<em>ClientAddPetRequest Body="{x:Null}" />
</uw</em>:AddPetActivity.Request>
</uw_:AddPetActivity>
</Sequence>
</Activity>
xmlns:uw_="clr-namespace:UiPath.WebClient.<em>ClientNamespace;assembly=SwaggerPetstore"
...
<uw</em>:AddPetActivity BearerToken="{x:Null}" ClientCertificate="{x:Null}" ClientCertificatePassword="{x:Null}" Headers="{x:Null}" OAuth2Token="{x:Null}" Password="{x:Null}" Username="{x:Null}" DisplayName="AddPet" Endpoint="["https://petstore.swagger.io/v2"]" sap:VirtualizedContainerService.HintSize="200,22.4" sap2010:WorkflowViewState.IdRef="AddPetActivity_1" TimeoutMS="30000">
<uw_:AddPetActivity.Request>
<uw_:<em>ClientAddPetRequest Body="{x:Null}" />
</uw</em>:AddPetActivity.Request>
</uw_:AddPetActivity>
</Sequence>
</Activity>
En utilisant Studio v2020.4, l’espace de noms suivant peut être trouvé lors de l’importation du même service Web :

Les types suivants sont trouvés lors de l’expansion du UiPath.WebClient.PetClientNamespace:

Par conséquent, si l’activité AddPet est utilisée dans un fichier xaml à partir d’une bibliothèque Studio créée avec v2020.4, elle fait partie du UiPath.WebClient.PetClientNamespace, et le type PetClientAddPetRequest est utilisé pour générer une demande. Ce sont différents espaces de noms et types comme pour les bibliothèques créées avec des versions antérieures à v2020.4.
Voici un extrait d’une telle bibliothèque créée avec v2020.4:
xmlns:uwp="clr-namespace:UiPath.WebClient.PetClientNamespace;assembly=SwaggerPetstore"
...
<uwp:AddPetActivity BearerToken="{x:Null}" ClientCertificate="{x:Null}" ClientCertificatePassword="{x:Null}" Headers="{x:Null}" OAuth2Token="{x:Null}" Password="{x:Null}" Username="{x:Null}" DisplayName="AddPet" Endpoint="["https://petstore.swagger.io/v2"]" sap:VirtualizedContainerService.HintSize="200,22.4" sap2010:WorkflowViewState.IdRef="AddPetActivity_1" TimeoutMS="30000">
<a href="https://docs.uipath.com/fr/uwp:AddPetActivity.Request">uwp:AddPetActivity.Request</a>
<uwp:PetClientAddPetRequest Body="{x:Null}" />
</uwp:AddPetActivity.Request>
</uwp:AddPetActivity>
</Sequence>
</Activity>
xmlns:uwp="clr-namespace:UiPath.WebClient.PetClientNamespace;assembly=SwaggerPetstore"
...
<uwp:AddPetActivity BearerToken="{x:Null}" ClientCertificate="{x:Null}" ClientCertificatePassword="{x:Null}" Headers="{x:Null}" OAuth2Token="{x:Null}" Password="{x:Null}" Username="{x:Null}" DisplayName="AddPet" Endpoint="["https://petstore.swagger.io/v2"]" sap:VirtualizedContainerService.HintSize="200,22.4" sap2010:WorkflowViewState.IdRef="AddPetActivity_1" TimeoutMS="30000">
<a href="https://docs.uipath.com/fr/uwp:AddPetActivity.Request">uwp:AddPetActivity.Request</a>
<uwp:PetClientAddPetRequest Body="{x:Null}" />
</uwp:AddPetActivity.Request>
</uwp:AddPetActivity>
</Sequence>
</Activity>
Collections Postman
L'application Postman peut être utilisée pour créer et regrouper des définitions d'API dans des collections, organisant et enchaînant ainsi vos requêtes. Postman prend en charge les scripts pour la transmission de données entre les requêtes API. Consultez la Documentation en ligne de Postman pour en savoir plus sur la création d'une collection.
Si vous avez déjà une collection Postman, vous pouvez charger ses demandes dans Studio et générer une activité. La maintenance de la collection se fait dans Postman, et tous les changements sont également exercés dans votre workflow.
Studio reçoit l'accès à une collection Postman via une clé API, qui doit être ajoutée à la fenêtre Éditeur de service , dans le champ Fichier ou Lien. La clé API est une clé à l'échelle du compte générée à partir de la page Paramètres du profil Postman > Clés API et non une clé API générée en partageant une collection. Par conséquent, les modifications des demandes ne sont effectuées que dans Postman et non dans Studio.
Studio charge toutes les demandes définies dans la collection, et les demandes ne peuvent pas être exécutées individuellement. L’édition et la réparation d’une collection dans Studio se réalisent de la même manière que pour les services WEB SOAP ou REST.
L'accès à la collection est uniquement pris en charge via la clé API. Le chargement d’un fichier de schéma JSON peut provoquer des erreurs inattendues.
Conditions préalables pour les collections Postman
- Nodejs et NodeJS CLI, version 6
- Newman version 4.5.5
Il est recommandé de redémarrer votre machine après l’installation de Newman.
Exemple avec une collection Postman
L’exemple suivant utilise une collection Postman pour get la valeur d’une certaine devise et l’affiche dans le panneau Sortie de Studio.
Dans cet exemple, nous avons écrit un script de test pour itérer les données reçues.Nous avons déclaré une variable globale directement dans le script, mais cela peut également être fait avec l'extrait Définir une variable globale dans Postman ; lisez-en plus à ce sujet ici.

L’argument In a transmis la valeur de devise EUR à un argument Out, visible dans la bibliothèque, dans le panneau Propriétés > Entrée > Collection. L’argument Out est visible dans le même panneau, dans la section Sortie.

Les arguments Out des activités sont mappés sur une variable et sa valeur est écrite dans le panneau Sortie.
Vous pouvez utiliser une activité Si pour valider la valeur retournée de la variable. Dans cet exemple, nous avons validé que la valeur était retournée, puis nous l'avons écrite dans le panneau Sortie.