SDK
Plus récente (Latest)
False
Image de fond de la bannière
Guide du développeur
Dernière mise à jour 23 mars 2024

Création d'assistants personnalisés

En utilisant le paquet UiPath.Activities.API du flux Officiel (Official) (https://pkgs.dev.azure.com/uipath/Public.Feeds/_packaging/UiPath-Official/nuget/v3/index.json], vous pouvez ajouter votre propre assistant personnalisé au ruban de Studio. Pour plus d'informations sur l'utilisation de l'API, consultez SDK Activités Studio ( Studio Activities SDK).


Remarque : le package UiPath.Activities.API doit être utilisé comme dépendance de développement dans votre projet personnalisé. En savoir plus sur Dépendances de développement.

Créer des assistants personnalisés

L'exemple suivant montre la définition d'un assistant qui crée une séquence vide lorsque vous cliquez dessus :

using System.Activities;
using System.Windows;
using System.Windows.Input;
using UiPath.Studio.Activities.Api;
using UiPath.Studio.Activities.Api.Wizards;
namespace MyCustomActivityPack
{
    public static class WizardCreator
    {
        public static void CreateWizards(IWorkflowDesignApi workflowDesignApi)
        {
            CreateDemoWizard(workflowDesignApi);
        }
        private static void CreateDemoWizard(IWorkflowDesignApi workflowDesignApi)
        {
            var wizardApi = workflowDesignApi.Wizards;
            var wizardDefinition = new WizardDefinition()
            {
                // You can add other definitions here to create a dropdown.
                //ChildrenDefinitions.Add()
                Wizard = new WizardBase()
                {
                    RunWizard = RunWizard
                },
                DisplayName = "DemoWizardDisplayName",
                Shortcut = new KeyGesture(Key.F9, ModifierKeys.Control | ModifierKeys.Shift),
                IconUri = "Icons/RecordIcon",
                Tooltip = "DemoWizardTooltip"
            };
            var collection = new WizardCollection(); //Use a collection to group all of your wizards.
            collection.WizardDefinitions.Add(wizardDefinition);
            wizardApi.Register(collection);
        }
        private static Activity RunWizard()
        {
            if(MessageBox.Show("Do you want a sequence?", "This is a wizard window", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                return new System.Activities.Statements.Sequence()
                {
                    DisplayName = "The wizard generated this sequence"
                };
            }
            return null;
        }
    }
}using System.Activities;
using System.Windows;
using System.Windows.Input;
using UiPath.Studio.Activities.Api;
using UiPath.Studio.Activities.Api.Wizards;
namespace MyCustomActivityPack
{
    public static class WizardCreator
    {
        public static void CreateWizards(IWorkflowDesignApi workflowDesignApi)
        {
            CreateDemoWizard(workflowDesignApi);
        }
        private static void CreateDemoWizard(IWorkflowDesignApi workflowDesignApi)
        {
            var wizardApi = workflowDesignApi.Wizards;
            var wizardDefinition = new WizardDefinition()
            {
                // You can add other definitions here to create a dropdown.
                //ChildrenDefinitions.Add()
                Wizard = new WizardBase()
                {
                    RunWizard = RunWizard
                },
                DisplayName = "DemoWizardDisplayName",
                Shortcut = new KeyGesture(Key.F9, ModifierKeys.Control | ModifierKeys.Shift),
                IconUri = "Icons/RecordIcon",
                Tooltip = "DemoWizardTooltip"
            };
            var collection = new WizardCollection(); //Use a collection to group all of your wizards.
            collection.WizardDefinitions.Add(wizardDefinition);
            wizardApi.Register(collection);
        }
        private static Activity RunWizard()
        {
            if(MessageBox.Show("Do you want a sequence?", "This is a wizard window", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
            {
                return new System.Activities.Statements.Sequence()
                {
                    DisplayName = "The wizard generated this sequence"
                };
            }
            return null;
        }
    }
}
Utilisez la propriété MinimizeBeforeRun pour minimiser Studio avant d’appeler RunWizard, et restaurez quand RunWizard revient.
La propriété RunWizardAsync doit être utilisée pour que l’assistant exécute de manière asynchrone.

Ajouter le projet à Studio

Pour rendre l'assistant visible dans le ruban de Studio, vous devez publier vos activités personnalisées dans un paquet NuGet et le mettre à disposition d'un flux défini dans Studio, version 2019.10.1 ou ultérieure.

Étape 1 : Créer le package NuGet


  1. Lancer NuGet Package Explorer.
  2. Cliquez sur Créer un nouveau paquet (Create a new package) (Ctrl + N). Une fenêtre divisée s'ouvre, affichant Métadonnées de paquet (Package metadata) et Contenu du paquet (Package content). Il faut ajouter toutes les dépendances dans cette dernière section.
  3. Cliquez avec le bouton droit sur la section Contenu du paquet (Package content). Un menu contextuel s'affiche.
  4. Cliquez sur Ajouter un dossier lib (Add lib folder). Notez qu'un nouvel élément lib (lib) est créé dans la section Contenu du package (Package contents).
  5. Cliquer sur lib (lib) avec le bouton droit de la souris et sélectionner Ajouter un fichier existant... (Add Existing File...).
  6. Chargez l'assembly externe (.dll) de votre projet.
  7. Cliquez sur Modifier > Modifier les métadonnées (Edit > Edit Metadata). La section Métadonnées du package (Package metadata) apparaît.
  8. Renseignez les champs de façon à décrire au mieux votre projet.
  9. Remplissez le champ ID (ID) et assurez-vous d'inclure le mot-clé “Activités” afin que le paquet puisse être affiché dans la fenêtre Gérer les paquets (Manage Packages), dans Studio.
  10. Click File > Save. In our case, the .nupkg file is created.
    Note: Be sure to create an intuitive folder structure for your activities. All empty folders inside the custom activity get removed when used with Orchestrator.
Étape 2 : installer le package NuGet dans UiPath Studio
Une fois le fichier .nupkg créé, ajoutez-le à un flux personnalisé dans Studio, comme expliqué ici.

Ouvrez la fenêtre Gérer les paquets (Manage Packages) et installez le paquet. Assurez-vous que le flux personnalisé est activé dans Studio.

Exemple d’assistant

Suivez simplement le lien ci-dessous pour télécharger l'exemple, qui contient également un exemple de création de paramètres d'activités personnalisés.

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

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.