UiPath Documentation
studio
2020.10
false
Guide de l’utilisateur de Studio
Important :
La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

Variables propriétaires UiPath

Les variables de type GenericValue

Une variable de type GenericValue peut contenir n'importe quel type de données, y compris du texte, des nombres, des dates et des tableaux. Cette variable est propre à Studio UiPath.

Les variables de type GenericValue sont automatiquement converties sous d'autres types de données, afin d'accomplir certaines actions. Veillez cependant à utiliser ces variables avec prudence, car la conversion n'est pas toujours celle qui convient le mieux à votre projet.

Il est possible de modifier les expressions de l'outil de conversion automatique afin d'affiner la conversion des variables de type GenericValue dans Studio UiPath. Remarque : le premier élément de l'expression est toujours utilisé comme guide par Studio pour l'ensemble de l'operation. Mettons par exemple que l'on souhaite additionner deux variables de type GenericValue : si la première valeur de l'expression est définie en tant que chaîne (String), le résultat sera une concaténation des deux expressions (comme s'il s'agissait de deux chaînes). Si par contre la première valeur est définie comme un entier (Integer), on obtiendra la somme des deux expressions.

Méthodes .NET prises en charge

Nom / Syntaxe Description

CompareTo

  • Function GenericValue.CompareTo(other As GenericValue) As Integer
  • Function GenericValue.CompareTo(obj As Object) As Integer

[Cliquez ici pour plus de détails][1]

[1] : https://msdn.microsoft.com/en-us/library/system.string.compareto(v=vs.110).aspx

Contient

  • Function GenericValue.Contains(other As String) As Boolean

[Cliquez ici pour plus de détails][2]

[2] : https://msdn.microsoft.com/en-us/library/dy85x1sa(v=vs.110).aspx

Cette méthode permet de déterminer si une chaîne contient une sous-chaîne particulière. Par exemple, pour savoir si une phrase contient un mot spécifique, il faut employer l'expression [SentenceVariable].Contains("term"), dans laquelle [SentenceVariable] est la variable de type GenericValue qui contient la phrase et "term" est le mot recherché.

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Est égal à

  • Function GenericValue.Equals(other As GenericValue) As Boolean
  • Function GenericValue.Equals(obj As Object) As Boolean

[Cliquez ici pour plus de détails][3]

[3] : https://msdn.microsoft.com/en-us/library/system.string.equals(v=vs.110).aspx

GetHashCode

  • Function GenericValue.GetHashCode() As Integer

[Cliquez ici pour plus de détails.][5]

[5] : https://msdn.microsoft.com/en-us/library/system.string.format(v=vs.110).aspx

GetType

  • Function Object.GetType() As Type

[Cliquez ici pour plus de détails][6]

[6] : https://msdn.microsoft.com/en-us/library/system.object.gettype(v=vs.110).aspx

GetTypeCode

  • Function GenericValue.GetTypeCode() As TypeCode

[Cliquez ici pour plus de détails][7]

[7] : https://msdn.microsoft.com/en-us/library/system.string.gettypecode(v=vs.110).aspx

IndexOf

  • Function GenericValue.IndexOf(value As String) As Integer
  • Function GenericValue.IndexOf(value As String, comparisonType As StringComparison) As Integer
  • Function GenericValue.IndexOf(value As String, startIndex As Integer) As Integer
  • Function GenericValue.IndexOf(value As String, startIndex As Integer, comparisonType As StringComparison) As Integer

[Cliquez ici pour plus de détails] [8]

[8] : https://msdn.microsoft.com/en-us/library/system.string.indexof(v=vs.110).aspx

Cette méthode permet d'obtenir l'index d'une sous-chaîne contenue dans une chaîne de caractères. Par exemple, pour trouver l'index du mot « locate » dans la phrase « Find "locate" dans cette phrase », il faut employer l'expression [SentenceVariable].IndexOf("locate"), dans laquelle [SentenceVariable] est la variable de type GenericValue qui contient la phrase et "locate" est le mot recherché.

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Longueur

  • Function GenericValue.Lenght() As Integer

[Cliquez ici pour plus de détails][9]

[9] : https://msdn.microsoft.com/en-us/library/system.string.length(v=vs.110).aspx

Cette méthode permet d'obtenir le nombre de caractères dans une chaîne de caractères. Par exemple, pour trouver le nombre de lettres dans un mot donné, il faut employer l'expression [WordVariable].Length, dans laquelle [WordVariable] est la variable de type GenericValue qui contient le mot.

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Remplacer (Replace)

  • Function GenericValue.Replace(oldValue As String, new value As String) As String

[Cliquez ici pour plus de détails.][10]

[10] : https://msdn.microsoft.com/en-us/library/system.string.replace(v=vs.110).aspx

Cette méthode permet de remplacer les données contenues dans une chaîne de caractères. Par exemple, pour remplacer le chemin d'un fichier local C:\ExampleFolder\Main.xaml par son chemin serveur correspondant C:/ExampleFolder/Main.xaml, il faut employer l'expression [PathVariable].Replace("\","/"), dans laquelle [PathVariable] est la variable de type GenericValue qui contient le chemin, "\" est le caractère à remplacer et "/" est le caractère qui le remplace.

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Fractionner

  • Function GenericValue.Split(ParamArray separator As Char()) As String()
  • Function GenericValue.Split(ParamArray separator As String()) As String()
  • Function GenericValue.Split(separator As Char(), options As StringSplitOptions) As String()
  • Function GenericValue.Split(separator As String(), options As StringSplitOptions) As String()

[Cliquez ici pour plus de détails] [11]

[11] : https://msdn.microsoft.com/en-us/library/system.string.split(v=vs.110).aspx

Cette méthode permet d'extraire les composants individuels d'une chaîne de caractères. Par exemple, pour extraire l'année à partir d'une date au format MM.JJ.YYYY, il faut employer l'expression [DateVariable].Split(".".ToCharArray)(2), dans laquelle [DateVariable] est la variable de type GenericValue qui contient la date, "." est le caractère qui sert de séparateur, .ToCharArray crée un tableau contenant les éléments délimités par le séparateur et (2) représente l'index de l'élément à extraire (c'est-à-dire l'année dans cet exemple).

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Sous-chaîne

  • Function GenericValue.Substring(startIndex As Integer) As String
  • Function GenericValue.Substring(startIndex As Integer, length As Integer) As String

[Cliquez ici pour plus de détails][12]

[12] : https://msdn.microsoft.com/en-us/library/system.string.substring(v=vs.110).aspx

Cette méthode permet d'extraire une sous-chaîne d'une chaîne de caractères. Par exemple, pour extraire un mot de la phrase « There are 100 machines available », il faut employer l'expression [SentenceVariable].Substring(10,3), dans laquelle [SentenceVariable] est la variable de type GenericValue qui contient la phrase, 10 est l'index du premier caractère à extraire et 3 représente la longueur de la sous-chaîne à partir du premier caractère. Dans cet exemple, la sous-chaîne résultante serait donc « 100 ».

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

ToBoolean

  • Function GenericValue.ToBoolean(provider As IFormatProvider) As Boolean

[Cliquez ici pour plus de détails][13]

[13] : https://msdn.microsoft.com/en-us/library/bb346937(v=vs.110).aspx

ToByte

  • Function GenericValue.ToByte(provider As IFormatProvider) As Byte

[Cliquez ici pour plus de détails][14]

[14] : https://msdn.microsoft.com/en-us/library/bb355898(v=vs.110).aspx

ToChar

  • Function GenericValue.ToChar(provider As IFormatProvider) As Char

[Cliquez ici pour plus de détails] [15]

[15]: https://msdn.microsoft.com/en-us/library/bb335877(v=vs.110).aspx

ToDecimal

  • Function GenericValue.ToDecimal(provider As IFormatProvider) As Decimal
  • Function GenericValue.ToDecimal(format As NumberStyles) As Decimal

[Cliquez ici pour plus de détails][17]

[17]: https://msdn.microsoft.com/en-us/library/bb359959(v=vs.110).aspx

Doubler

  • Function GenericValue.ToDouble(provider As IFormatProvider) As Double
  • Function GenericValue.ToDouble(format As NumberStyles) As Double

[Cliquez ici pour plus de détails][18]

[18]: https://msdn.microsoft.com/en-us/library/bb154906(v=vs.110).aspx

ToInt

  • Function GenericValue.ToInt(culture As IFormatProvider) As Integer?
  • Function GenericValue.ToInt() As Integer?

Cette méthode est utilisée pour convertir une valeur donnée en integer pouvant accepter la valeur Null.

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToInt16

  • Function GenericValue.ToInt16(provider As IFormatProvider) As Short

[Cliquez ici pour plus de détails] [20]

[20]: https://msdn.microsoft.com/en-us/library/bb293091(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToInt32

  • Function GenericValue.ToInt32(provider As IFormatProvider) As Integer

[Cliquez ici pour plus de détails][21]

[21]: https://msdn.microsoft.com/en-us/library/bb300452(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToInt64

  • Function GenericValue.ToInt64(provider As IFormatProvider) As Long

[Cliquez ici pour plus de détails][22]

[22]: https://msdn.microsoft.com/en-us/library/bb359566(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToLower

  • Function GenericValue.ToLower() As String

[Cliquez ici pour plus de détails.][23]

[23]: https://msdn.microsoft.com/en-us/library/system.string.tolower(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

ToLowerInvariant

  • Function GenericValue.ToLowerInvariant() As String

[Cliquez ici pour plus de détails][24]

[24]: https://msdn.microsoft.com/en-us/library/system.string.tolowerinvariant(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

ToSByte

  • Function GenericValue.ToSByte(provider As IFormatProvider) As SByte

[Cliquez ici pour plus de détails][25]

[25]: https://msdn.microsoft.com/en-us/library/bb342232(v=vs.110).aspx

ToSingle

  • Function GenericValue.ToSingle(provider As IFormatProvider) As Single

[Cliquez ici pour plus de détails][26]

[26]: https://msdn.microsoft.com/en-us/library/bb360375(v=vs.110).aspx

ToString

  • Function GenericValue.ToString(formatProvider As IFormatProvider) As String
  • Function GenericValue.ToString(format As String, formatProvider As IFormatProvider) As String
  • Function GenericValue.ToString() As String

[Cliquez ici pour plus de détails][27]

[27]: https://msdn.microsoft.com/en-us/library/system.string.tostring(v=vs.110).aspx

ToType

  • Function GenericValue.ToType(conversionType As Type, provider As IFormatProvider) As Object

[Cliquez ici pour plus de détails][29]

[29]: https://msdn.microsoft.com/en-us/library/bb358540(v=vs.110).aspx

ToUInt16

  • Function GenericValue.ToUInt16(provider As IFormatProvider) As UShort

[Cliquez ici pour plus de détails.][30]

[30]: https://msdn.microsoft.com/en-us/library/bb337265(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToUInt32

  • Function GenericValue.ToUInt32(provider As IFormatProvider) As UInteger

[Cliquez ici pour plus de détails][31]

[31]: https://msdn.microsoft.com/en-us/library/bb357762(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToUInt64

  • Function GenericValue.ToUInt64(provider As IFormatProvider) As Ulong

[Cliquez ici pour plus de détails][32]

[32]: https://msdn.microsoft.com/en-us/library/bb155099(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Boolean, les valeurs « Vrai » et « Faux » sont converties en 1 et 0, respectivement.

ToUpper

  • Function GenericValue.ToUpper() As String

[Cliquez ici pour plus de détails][33]

[33]: https://msdn.microsoft.com/en-us/library/system.string.toupper(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

ToUpperInvariant

  • Function GenericValue.ToUpperInvariant() As String

[Cliquez ici pour plus de détails][34]

[34]: https://msdn.microsoft.com/en-us/library/system.string.toupperinvariant(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Découper

  • Function GenericValue.Trim(ParamArray trimChars As Char()) As String
  • Function GenericValue.Trim() As String

[Cliquez ici pour plus de détails.][35]

[35]: https://msdn.microsoft.com/en-us/library/system.string.trim(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

TrimEnd

  • Function GenericValue.TrimEnd(ParamArray trimChars As Char()) As String

[Cliquez ici pour plus de détails][36]

[36]: https://msdn.microsoft.com/en-us/library/system.string.trimend(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

TrimStart

  • Function GenericValue.TrimStart(ParamArray trimChars As Char()) As String

[Cliquez ici pour plus de détails][37]

[37]: https://msdn.microsoft.com/en-us/library/system.string.trimstart(v=vs.110).aspx

Lors de l'utilisation de cette méthode avec une variable GenericValue de type de données Ent, Flottant ou Boolean, les données sont automatiquement converties en string et gérées en conséquence.

Quand vous utilisez Ctrl + K, Ctrl + M, ou Ctrl + Shift + M directement dans le corps d’activité Valeur de format, la variable ou l’argument créé est de type GenericValue. Pour d’autres activités, le type créé est le même que le type requis de l’activité.

Exemple d'utilisation d'une variable de type GenericValue

Pour illustrer les propriétés d'une variable de type GenericValue, nous vous invitons à créer un projet d'automatisation dont l'objectif est d'effectuer des opérations variées, puis à observer la façon dont les résultats de ces opérations sont influencés par la définition des expressions. Pour ce faire nous allons créer deux variables de types GenericValue contenant différents types de données et nous allons afficher les résultats dans le module Sortie (Output).

  1. Créez un nouveau projet vierge.

  2. Créez trois variables de type GenericValue : Int, Str et Result.

  3. Indiquez 12 dans la colonne Défaut (Default) de la variable Int et "34" dans celle de la variable Str. La première variable sera interprétée comme un entier, tandis que la seconde sera interprétée comme une chaîne de caractères.

  4. Ajouter une activité Attribuer (Assign) au panneau Concepteur (Designer) et la relier au nœud Initial.

  5. Rendez-vous dans le module Propriétés (Properties) et saisissez la variable Result dans le champ À (To).

  6. Indiquez Int + Str dans le champ Valeur (Value).

  7. Ajouter une activité Écrire une ligne (Write Line) et la relier à l'activité Attribuer (Assign).

  8. Dans le volet Propriétés, dans le champ Texte, saisissez la variable Result.

    Le projet doit ressembler à la capture d'écran suivante.

  9. Appuyez sur la touche F5 pour exécuter votre projet d'automatisation. Remarque : la somme des deux nombres apparait dans le module Sortie (Output).

  10. Revenez à l'activité Attribuer ajoutée précédemment et modifiez le champ Valeur en Str + Int pour inverser l'ordre des variables.Le projet doit ressembler à la capture d'écran suivante.

  11. Appuyez sur la touche F5 pour exécuter votre projet d'automatisation. Remarque : les deux nombres font à présent l'objet d'une concaténation dans le module Sortie (Output).

Cela signifie qu’UiPath Studio prend le premier élément défini dans votre expression comme une ligne directrice pour définir l'opération à effectuer. Si le premier élément de votre expression est un entier ou une variable GenericValue remplie en tant qu’entier, UiPath Studio effectuera la somme des éléments.

Si le premier élément de votre expression est une chaîne ou une variable GenericValue remplie sous forme de chaîne, UiPath Studio effectuera la concaténation des éléments.

Variables QueueItem

Nous vous recommandons de lire la page À propos des files d'attente et des transactions pour obtenir une vue d'ensemble des files d'attente et des transactions avant de passer à la variable QueueItem.

Avant d'approfondir le sujet, assurez-vous de bien comprendre la distinction entre les éléments de file d'attente (éléments stockés dans une file d'attente d'Orchestrator) et les variables QueueItem (utilisées dans Studio pour traiter les éléments de file d'attente). Nous y faisons référence exactement comme cela : « Variables QueueItem » et « éléments de file d'attente ».

Généralement, comme le nom l'indique, la variable QueueItem stocke un élément extrait d'un conteneur d'éléments, une file d'attente. Cette extraction s'effectue généralement dans le but d'utiliser ensuite les éléments de file d'attente dans différents scénarios. Supposons que vous représentez un établissement bancaire et que vous avez un bordereau de dépôt de 50 clients. Vous voulez traiter les données de chaque client qui avait déposé un chèque de moins de 5 000 dollars tiré sur notre banque, avec une application financière tierce. À cet effet, vous pouvez effectuer un workflow dans lequel la variable QueueItem stocke, tour à tour, les informations de chaque client. Chaque entrée lue par la variable QueueItem est stockée dans un élément de file d'attente et ajoutée à la file d'attente désignée dans Orchestrator. Le résultat de ce processus complet est une file d'attente qui contient les informations des clients, chacune dans l'élément de file d'attente correspondant.

Pour traiter ensuite les données qui remplissent la condition, vous devez créer un autre workflow qui extrait les éléments de la file d'attente auparavant créée, avec une valeur correspondante de chèque tiré sur notre banque inférieure à 5 000 dollars. Vous trouverez, à la fin de cette rubrique, une procédure pas-à-pas sur la création d'un tel projet.

Méthodes .NET prises en charge

Nom / Syntaxe Description

Est égal à

  • Function Object.Equals(obj As Object) As Boolean

GetHashCode

  • Function Object.GetHashCode() As Integer

GetType

  • Function Object.GetType() As Type

ToString

  • Function Object.ToString() As String

Propriétés prises en charge

Nom / Syntaxe Description

AssignedTo

  • Property QueueItem.AssignedTo As String

DueDate

  • Property QueueItem.DueDate As Date?

La date et l'heure les plus récentes de traitement de l'élément. Si vide, l'élément peut être traité à tout moment.

DeferDate

  • Property QueueItem.DueDate As Date?

La date et l'heure les plus anciennes auxquelles l'élément est disponible pour le traitement. Si vide, l'élément peut être traité dès que possible.

Id

  • Property QueueItem.Id As Long?

ItemKey

  • Property QueueItem.ItemKey As Guid

Identificateur unique de l'élément. Par exemple, 1bf829e1-cd6b-4275-a364-19db3cfe09c7.

Priorité (Priority)

  • Property QueueItem.Priority As QueueItemPriority

La priorité de l'élément de file d'attente, telle que définie dans Studio dans le champ Priorité (Priority) du panneau Propriétés (Properties).

ProcessingException

  • Property QueueItem.ProcessingException As ProcessingException

Exception de traitement d'un élément en échec.

Progression (Progress)

  • Property QueueItem.Progress As String

Informations de la progression personnalisée sur un élément de file d'attente dont l'état est InProgress.

QueueDefinitionId

  • Property QueueItem.QueueDefinitionId As Long

Identificateur unique de la file d'attente sous laquelle un élément de file d'attente/une transaction a été traité.

QueueName

  • Property QueueItem.QueueName As String

Nom de la file d'attente contenant les éléments traités.

Référence (Reference)

  • Property QueueItem.Reference As String

Valeur spécifiée par l'utilisateur pour faciliter l'identification des éléments de file d'attente.

RetryNo

  • Property QueueItem.RetryNo As Integer

Nombre de nouvelles tentatives pour un élément.

État de révision (ReviewStatus)

  • Property QueueItem.ReviewStatus As String

État de révision de l'élément de file d'attente, tel que récupéré depuis Orchestrator.

RowVersion

  • Property QueueItem.RowVersion As Byte()

Champ interne utilisé pour l'horodatage de la version. Il est mis à jour chaque fois qu'une propriété de la transaction actuelle est modifiée.

SpecificContent

  • Property QueueItem.SpecificContent As Dictionary(Of String, Object)

Collection des paires clé et valeur contenant des données personnalisées associées à la transaction en cours, telle que configurée dans l'activité Add Queue Item.

StartTransactionTime

  • Property QueueItem.StartTransactionTime As Date?

Date et heure de début du traitement de la transaction.

État (Status)

  • Property QueueItem.Status As QueueItemStatus

État de l'élément de file d'attente, tel que récupéré depuis Orchestrator.

Exemple d'utilisation d'une variable QueueItem

En raison de la nature de cet exemple, nous avons divisé cette section en deux parties, chacune représentant l'un des deux workflows principaux à utiliser lorsque vous gérez des files d'attente et des éléments de file d'attente.

Téléchargement d'éléments dans une file d'attente

Pour montrer comment ajouter des éléments dans une file d'attente, créons une automatisation qui traite les entrées contenues dans un fichier .xlsx. Supposons que vous représentez un établissement bancaire et que vous avez un bordereau de dépôt de 50 clients. Vous voulez traiter les données de chaque client qui ont déposé un chèque de moins de 5 000 dollars tiré sur notre banque, avec une application financière tierce. Le rapport contient le nom du client, la valeur du chèque tiré sur notre banque et deux autres valeurs supplémentaires, disons Encaissement et chèque non tiré sur notre banque. Nous créons un workflow dans lequel la variable QueueItem stocke, tour à tour, les informations de chaque client. Chaque entrée lue par la variable QueueItem est ensuite stockée dans un élément de file d'attente et ajoutée à la file d'attente désignée dans Orchestrator. Le résultat de ce processus complet est une file d'attente qui contient les informations spécifiques de chaque client. Avant de passer au workflow réel, vous souhaiterez peut-être examiner le rapport des clients ici. Nous allons utiliser la feuille « Rapports de juillet ».

Sans plus tarder :

  1. Créez une nouvelle séquence.

  2. Add an Excel Application Scope activity inside the sequence, and define the location of the workbook in the Properties pane of the activity.

  3. Inside the Do section, add a Read Range activity to read the desired range of values from the report and store them in a DataTable variable. In our case, type "A1-D51" or simply leave the default value, “”, which means the entire spreadsheet is read.

  4. Dans le champ Nom de la feuille (Sheet Name), entrez le nom de la feuille, à savoir “July Report”.

  5. Dans le champ Table de données (Data Table), appuyez sur Ctrl + K pour créer une variable DataTable qui stocke la plage de données auparavant lue. Nommez-la DataTable1 ou un nom similaire. Le volet Variables (Variables) doit également afficher la variable récemment créée comme suit :

  6. Next, add a For Each Row activity to the Designer panel and fill in the blank fields with “row” and the name of the DataTable variable, DataTable1, respectively. This activity performs the action defined in the Body section for each row in the data table. The Do section should look similar to the following screenshot so far:

  7. Dans la section Corps (Body) de l'activité For Each Row, ajoutez une activité Add Queue Item. Cela permet d'ajouter un élément à une file d'attente (définie ci-dessous aux étapes 8 et 12), pour chaque ligne dans le tableur.

  8. Dans le volet Propriétés (Properties), champ QueueName, entrez le nom de la file d'attente dans lequel vous voulez stocker les éléments, disons ReportQueue.

  9. Dans la section Entrée (Input), cliquez sur le bouton correspondant au champ ItemInformation pour ouvrir la fenêtre ItemInformation. Créez 4 arguments, chacun correspondant à une colonne du rapport. Définissez-les comme suit :

    • Name, en conservant les valeurs par défaut de Direction (Direction) et Type (Type), et avec l'option Valeur (Value) définie sur row(0).ToString. Cela permet de récupérer la valeur de la colonne avec le compteur 0 pour chaque ligne du classeur, dans notre cas, le nom du client.
    • CashIn, en conservant les valeurs par défaut de Direction (Direction) et Type (Type), et avec l'option Valeur (Value) définie sur row(1).ToString. Cela permet de récupérer la valeur de la colonne avec le compteur 1 pour chaque ligne du classeur, dans notre cas, la valeur Encaissement.
    • OnUsCheck, en conservant les valeurs par défaut de Direction (Direction) et Type (Type), et avec l'option Valeur (Value) définie sur row(2).ToString. Cela permet de récupérer la valeur de la colonne avec le compteur 2 pour chaque ligne du classeur, dans notre cas, la valeur Chèque tiré sur notre banque.
    • NotOnUsCheck, en conservant les valeurs par défaut de Direction (Direction) et Type (Type), et avec l'option Valeur (Value) définie sur row(3).ToString. Cela permet de récupérer la valeur de la colonne avec le compteur 3 pour chaque ligne du classeur, dans notre cas, la valeur Chèque non tiré sur notre banque.
  10. La fenêtre ItemInformation doit ressembler à ceci dans la capture d'écran suivante :

  11. Connectez le robot de Studio à Orchestrator. Pour plus de détails sur la façon de procéder, cliquez ici.

  12. Navigate to https://platform.uipath.com, log in using your credentials, and then create a queue, ReportQueue, to store the items. Make sure that, whatever name you used above (step 8), you use the same here.

  13. Retournez dans Studio. À ce stade, vous workflow ne doit pas contenir d'erreurs et doit être fonctionnel. L'étape suivante consiste donc à le mettre à la disposition d'Orchestrator. À cet effet, cliquez sur Conception (Design) > Publier (Publish).

  14. Pour exécuter le processus, cliquez sur Conception (Design) > Exécuter (Run).

    Remarque :

    Prenez en compte qu'après leur traitement, les éléments de file d'attente deviennent des transactions, et sont gérés ensuite comme tels.

Traitement des transactions à partir d'une file d'attente

Pour montrer comment traiter ensuite des transactions à partir d'une file d'attente, nous allons créer un second workflow qui récupère à partir de la file d'attente appropriée, les transactions avec une valeur de chèque tiré sur notre banque inférieure à 5 000 dollars. Pour chaque transaction qui remplit la condition, les valeurs sont collectées et introduites dans une application factice tierce. Les autres sont appelées exceptions métier.

  1. Accédez à Conception (Design) > Nouveau (New) > Organigramme (Flowchart) pour créer un fichier dans le projet lancé ci-dessus.

  2. Add an Open Application activity to open the third-party dummy application. Connect it to the Start node.

  3. Renseignez les détails suivants (Nom complet (Display Name), FileName, Sélecteur (Selector)) dans le panneau Propriétés (Properties), et configurez l'activité pour vous connecter à l'aide des informations d'identification correspondantes. Utilisez admin pour le champ Nom d'utilisateur (Username), et password pour le champ Mot de passe (Password).

  4. Dans le champ FileName, renseignez le chemin d'accès de l'application.

  5. Dans le champ Sélecteur (Selector), définissez un sélecteur pour UIDemo en utilisant l'Éditeur de sélecteur.

  6. Ajoutez une activité Doit arrêter au panneau Concepteur et connectez-la à l'activité Ouvrir l'application.

  7. Ajoutez une activité Flow Decision au panneau Concepteur (Designer) et connectez-la à l'activité Should Stop. Ces deux dernières activités vérifient si vous avez arrêté la tâche en cours d'exécution. Ceci permet de configurer ensuite le workflow pour effectuer différentes routines de sécurité après le déclenchement de l'arrêt. Vous trouverez ci-dessous un exemple d'une telle routine :

    • Ajoutez une activité Log Message et connectez-la à la branche True de la décision de flux auparavant ajoutée.
    • Dans le panneau Propriétés (Properties), champ Message (Message), entrez « Processus d'arrêt requis » ou un message similaire à afficher si l'arrêt est déclenché.
    • Ajoutez une activité Fermer l'application et connectez-la à l'activité Message du journal précédemment ajoutée.
    • Dans le panneau Propriétés (Properties), champ DisplayName, après l'activité Close application, entrez UIDemo.exe UIDemo.
  8. Ajoutez une activité Get Transaction Item à la branche False de la décision de flux ajoutée auparavant (étape 7). Cette activité récupère les éléments de transaction de la file d'attente et les stocke, tour à tour, avec chaque itération de la boucle, dans une variable QueueItem.

  9. Dans le panneau Propriétés (Properties), champ QueueName, entrez le nom de la file d'attente qui stocke vos éléments. Dans notre cas, tel que défini dans la section Téléchargement d'éléments dans une file d'attente (Uploading Items into a Queue), le nom est « ReportQueue ».

  10. Dans le champ TransactionItem, appuyez sur Ctrl+K pour créer la variable QueueItem qui stocke chaque élément de transaction. Nommez-le « TransItem » ou similaire.

  11. Ajoutez une activité Flow Decision au panneau Concepteur (Designer) et connectez-la à l'activité Get Transaction Item.

  12. Dans le volet Propriétés (Properties), champ Condition (Condition), entrez TransItem isNot Nothing. Cette activité vérifie la valeur de chaque élément pour déterminer si la fin de la file d'attente a été atteinte.

  13. Connectez la branche Faux (False) de la décision de flux à l'activité Log Message créée à l'étape 7. Cela garantit l'arrêt de la tâche lorsque la fin de la file d'attente est atteinte.

  14. Ajoutez une autre activité Flow Decision au panneau Concepteur (Designer) et connectez-la à la branche Vrai (True) de la décision de flux créée à l'étape 11.

  15. Dans le panneau Propriétés (Properties), champ Condition (Condition), entrez cint(TransItem.SpecificContent("OnUSCheck").ToString) < 5000, où :

    • cint convertit une variable de type string en type integer.

    • TransItem est la variable QueueItem (étape 18) utilisée pour stocker les éléments.

    • SpecificContent("OnUSCheck") récupère le contenu de l'argument On US Check dans chaque élément.

    • .ToString convertit le contenu de la variable QueueItem en variable de type string.

    • < 5000 est la condition pour laquelle vous devez effectuer les vérifications.

      L'expression ci-dessus convertit la valeur OnUSCheck de chaque variable QueueItem en variable string, qui est ensuite convertie en variable integer. La valeur ainsi obtenue fait l'objet d'une vérification de conformité avec la condition.

  16. Ajoutez une activité Set Transaction Status au panneau Concepteur (Designer) et connectez-la à la branche Faux (False) de la décision de flux précédente (étape 13).

  17. Dans le panneau Propriétés (Properties), assurez-vous que le champ État (Status) est défini sur Échec (Failed) et ErrorType sur Métier (Business). De cette façon, si la valeur du chèque tiré sur notre banque est supérieure ou égale à 5 000, la transaction est marquée comme en échec avec une exception métier

  18. Dans le champ TransactionItem, ajoutez la variable TransItem.

  19. Dans le champ Raison (Reason), entrez « Le montant OnUSCheck est supérieur à 5 000 ou un message similaire, à afficher pour la transaction en échec.

  20. Connectez l'activité Set Transaction Status à l'activité Should Stop (étape 6), pour créer une boucle et traiter la transaction suivante dans la file d'attente.

  21. Ajoutez une activité sequence au panneau Concepteur et connectez-la à la branche Vrai de la décision de flux précédente (étape 13).À l'intérieur de la sequence, ajoutez une activité Essayer de capturer et configurez-la de telle sorte que toutes les erreurs potentielles soient correctement étiquetées comme des erreurs d'application lors du traitement des éléments.

  22. Ouvrez l'application UIDemo et connectez-vous à l'aide du nom d'utilisateur admin et du mot de passe password.

  23. Effectue la série suivante d'activités pour chacun des champs Encaissement (Cash In), Chèque tiré sur notre banque (On Us Check) et Chèque non tiré sur notre banque (Not On Us Check) dans l'application UIDemo :

    • Into the previous Try Catch activity, add a Type Into activity.
    • Cliquez sur Indiquer à l'écran (Indicate on screen) et sélectionnez dans l'interface UIDemo, le champ vide correspondant à Encaissement (Cash In).
    • Dans le volet Propriétés (Properties), champ Text, entrez transItem.SpecificContent("CashIn").ToString. Chaque terme de l'expression est expliqué ci-dessus (étape 15). Cette expression convertit la valeur dans chaque variable QueueItem en variable string.
    • Make sure that the Simulate Type option is selected.
  24. Dans l'onglet Conception (Design), section Assistants (Wizards), cliquez sur Extraction de données d'écran (Screen Scraping) et pointez sur le numéro de transaction dans l'application UIDemo.

  25. Dans l'Assistant Extracteur des données d'écran (Screen Scraper Wizard), choisissez une méthode d'extraction et cliquez sur Terminer (Finish). Cela insère une activité Extraction de données d'écran (Screen Scraping) dans votre workflow. Veillez à la positionner après les activités Type Into précédentes, et définissez le champ Texte (Text) sur une nouvelle variable, disons TransactionValue. Cela permet de récupérer le numéro de transaction de chaque élément de file d'attente qui remplir la condition initiale.

  26. Ajoutez une activité Set Transaction Status après l'activité Extraction de données d'écran (Screen Scraping).

  27. Dans le panneau Propriétés (Properties), assurez-vous que le champ État (Status) est défini sur Réussi (Successful) et ErrorType sur Application (Application). De cette façon, si l'ensemble de valeurs est correctement inséré dans l'application, l'état de la transaction est défini sur Réussi (Successful), ou sinon désigné comme exception d'application.

  28. Dans la fenêtre Sortie (Output), définissez un nouvel argument et ajoutez la variable auparavant créée, TransactionValue (étape 25) en tant que valeur.

  29. Dans le champ TransactionItem, ajoutez la variable TransItem.

  30. Ajoutez une activité Click à l'activité Sequence après les activités Type Into.

  31. Cliquez sur Indiquer à l'écran (Indicate on screen) et sélectionnez le bouton Accepter (Accept) dans l'interface UIDemo. Assurez-vous que l'option Simulate Type est sélectionnée.

  32. L'activité Try Catch doit ressembler à ceci dans la capture d'écran suivante :

  33. Revenez à l'organigramme et connectez l'activité Sequence précédente (étape 21) à l'activité Should Stop (étape 6), pour créer une boucle et traiter la transaction suivante dans la file d'attente.

  34. L'organigramme doit ressembler à ceci dans la capture d'écran suivante :

  35. Pour exécuter le processus, cliquez sur Conception (Design) > Exécuter (Run).

  36. After the execution has ended, you may navigate to https://platform.uipath.com and display the processed transactions with the corresponding processing details:

  • Transaction réussie

  • Transaction en échec

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