- Introduction
- Démarrage
- Modélisation des processus
- Compréhension de la modélisation des processus
- Ouverture du canevas de modélisation
- Modéliser votre processus
- Alignement et connexion des éléments BPMN
- Autopilot™ pour Maestro (version préliminaire)
- Implémentation des processus
- Configuration des propriétés et des données
- Éditeur de variables et d'expressions
- Events
- Gateways (Passerelles)
- Implémentation multi-instances
- Sous-processus
- Projets basés sur des solutions : paramètres spéciaux
- Transition des expressions C# aux expressions JavaScript
- Débogage
- Simulation
- Publication et mise à niveau des processus agentiques
- Scénarios de mise en œuvre courants
- Extraire et valider des documents
- Opérations de processus
- Surveillance des processus
- Optimisation des processus
- Informations de référence

Guide de l'utilisateur de Maestro
Transition des expressions C# aux expressions JavaScript
Objectif
Cette page vous aide à déplacer des Processes Maestro existants des expressions C# vers des expressions JavaScript. UiPath rend obsolète C# comme langage d’expression dans Maestro afin de fournir une expérience de script unifiée, une mise en surbrillance de la syntaxe moderne et une compatibilité plus étendue avec d’autres composants Automation Cloud.
Ce que cette modification signifie
- Les expressions C# continuent de fonctionner et sont entièrement prises en charge jusqu’à ce qu’elles soient officiellement supprimées dans une publication future.
- Les nouveaux projets et fonctionnalités Maestro utilisent désormais des expressions JavaScript par défaut.
- Nous vous recommandons de migrer les expressions existantes vers JavaScript pour garantir la compatibilité future.
Si vous voyez un message d’alerte jaune, cela signifie que votre projet utilise actuellement l’ancien éditeur d’expressions C#. Vous pouvez continuer à utiliser vos expressions existantes, mais nous vous recommandons de commencer à les migrer vers JavaScript.

Principales différences en un coup d'œil
| Concept | Syntaxe C# | Syntaxe JavaScript | Remarques |
|---|---|---|---|
| Concaténation de string | "Hello " + name | "Hello " + name | Identique dans les deux langages. |
| Conversion de l'incident | userName.ToUpper() | userName.toUpperCase() | Le nom de la méthode utilise toUpperCase en minuscules. |
| Égalité | amount == 100 | amount === 100 | Utilisez === pour l’égalité stricte. |
| Nul ou vide | string.IsNullOrEmpty(x) | !x ou x === "" | JavaScript traite null et undefined comme étant faux. |
| Longueur des collections | items.Count | items.length | Le nom de la propriété diffère. |
| Expression conditionnelle | amount > 5000 ? "High" : "Low" | amount > 5000 ? "High" : "Low" | Même syntaxe dans les deux langages. |
| Interpolation de la string | $"Hello {name}" | `Hello ${name}` | Utilisez les apostrophes ouvrantes (`) pour les littéraux de modèle. |
| Dater maintenant | DateTime.Now | new Date() | Utilisez l’Object JavaScript Date. |
| Math | Math.Round(x) | Math.round(x) | Les noms de fonctions sont en minuscules dans JavaScript. |
Comment mettre à jour des expressions existantes
- Ouvrez l’éditeur d’expressions pour chaque propriété ou condition de passerelle affectée.
- Copiez l’expression C# et adaptez-la à l’aide de la syntaxe JavaScript (consultez la table Principales différences en un coup d'œil).
- Utilisez Test dans l'éditeur pour confirmer le résultat.
- Enregistrez et republiez votre processus.
Lors de la migration de formules complexes, validez les noms des variables et assurez-vous que toutes les comparaisons de string utilisent ===.
Exemple de migration
Avant (C#) : vars.total = items.Sum(x => x.Price); if (vars.total > 10000) vars.priority = "High" ;
Après (JavaScript) : vars.total = items.reduce((sum, x) => sum + x.Price, 0); if (vars.total > 10000) vars.priority = "High";
Équivalents fréquemment utilisés
| Action commune | C# | JavaScript |
|---|---|---|
| Vérifier plusieurs conditions | (a && b) || c | (a && b) || c |
| Analyser un nombre | int.Parse(x) | parseInt(x) |
| Convertir en string | value.ToString() | String(value) |
| Arrondir à 2 décimales | Math.Round(x, 2) | Number(x.toFixed(2)) |
| Comparer en ignorant l'incident | name.Equals("UIPath", StringComparison.OrdinalIgnoreCase) | name.toLowerCase() === "uipath" |
Conseils de test
- Utilisez le bouton Tester dans l'éditeur d'expressions pour confirmer les sorties.
- Surveillez les différences de gestion nulle et de coercition de type (
===vs==). - Les strings et les nombres sont automatiquement convertis en JavaScript ; utilisez des moules explicites si la précision est critique.
Prochaines étapes
- Commencez à écrire de nouvelles expressions en JavaScript.
- Mettez à jour les Processes existants au fil du temps à l’aide de ce guide.
- Planifiez la migration à l’aide d’Autopilot ou de la traduction manuelle.
- Suivez les notes de publication futures afin de connaître la suppression éventuelle des expressions C#.