- Notes de publication
- Démarrage
- Installation
- Prérequis logiciels et matériels
- Installation du serveur
- Mise à jour de la licence
- Déploiement du profileur d'UiPath Process Mining
- Déploiement d’un connecteur(.mvp)
- Mise à jour d'UiPath Process Mining
- Mettre à jour une version personnalisée d'une application ou d'un accélérateur de découverte
- Installation d'un environnement de formation
- Configuration
- Intégrations
- Authentification
- Working with Apps and Discovery Accelerators
- Menus et tableaux de bord AppOne
- Configuration d'AppOne
- TemplateOne 1.0.0 menus et tableaux de bord
- Configuration de TemplateOne 1.0.0
- TemplateOne menus and dashboards
- Configuration de TemplateOne 2021.4.0
- Menus et tableaux de bord de l’accélérateur de découverte Purchase to Pay
- Configuration de Discovery Accelerator de l’achat au paiement
- Menus et tableaux de bord de l’accélérateur de découverte Order-to-Cash
- Configuration de Order to Cash Discovery Accelerator
- Basic Connector for AppOne
- Déploiement du connecteur de base<br />
- Présentation du connecteur de base
- Tables d'entrée du connecteur de base
- Ajout de balises
- Ajout d’estimations d’automatisation
- Ajout de dates d'échéance
- Ajout de modèles de référence
- Configuration d'Actionable Insights
- Réglage des graphiques réductibles
- Utilisation de l’ensemble de données de sortie dans AppOne
- Output tables of the Basic Connector
- SAP Connectors
- Introduction to SAP Connector
- Entrée SAP
- Vérification des données dans le connecteur SAP
- Ajout de balises spécifiques à un processus au connecteur SAP pour AppOne
- Ajout de dates d'échéance spécifiques aux processus au connecteur SAP pour AppOne
- Ajout d’estimations d’automatisation au connecteur SAP pour AppOne
- Ajout d'attributs au connecteur SAP pour AppOne
- Ajout d’activités au connecteur SAP pour AppOne
- Ajout d’entités au connecteur SAP pour AppOne
- Connecteur SAP Order to Cash pour AppOne
- Connecteur SAP Purchase to Pay pour AppOne
- Connecteur SAP pour Purchase to Pay Discovery Accelerator
- Connecteur SAP pour l’accélérateur de découverte Order-to-Cash
- Superadmin
- L'onglet Espaces de travail (Workspaces)
- L'onglet Données de développement (Development Data)
- L'onglet Versions (Releases)
- L'onglet Données publiées (Released data)
- The Builds tab
- L'onglet Données du serveur (Server data)
- Onglet Paramètres (Settings)
- L'onglet Utilisateurs Superadmin
- L'onglet Statut (Status)
- Onglet Licence (License)
- Création de versions
- Afficher l'historique de la branche
- Creating Apps
- Modules
- Tableaux de bord et graphiques
- Tables et éléments de table
- Intégrité de l'application
- How to ....
- Travailler avec les connecteurs SQL
- Introduction to SQL connectors
- Setting up a SQL connector
- CData Sync extractions
- Running a SQL connector
- Editing transformations
- Libération d'un connecteur SQL
- Scheduling data extraction
- Structure des transformations
- Using SQL connectors for released apps
- Generating a cache with scripts
- Setting up a local test environment
- Separate development and production environments
- Ressources utiles
Guide de l'utilisateur de Process Mining
Introduction
Les expressions d'enregistrement ne prennent que la valeur de l'enregistrement lui-même comme entrée. En comparaison, les expressions agrégées peuvent être utilisées pour effectuer des calculs sur un ensemble spécifique d'enregistrements. Par exemple, pour calculer le Montant total de tous les enregistrements ou le nombre total d'enregistrements de l'ensemble de données. Une expression agrégée peut être comparée à la fonction GROUP BY dans SQL.
Agréger au niveau racine
Une expression agrégée calcule une valeur pour chaque valeur unique au niveau agrégé. Par défaut, celui-ci se trouve au niveau de la racine , c'est-à-dire une valeur pour toute la table.

Vous trouverez ci-dessous un exemple d'expression d'agrégation permettant de calculer la somme de tous les montants de l'ensemble de données Factures.

L'expression d'agrégation sum(records.amount) est évaluée comme décrit ci-dessous :
- Prenez tous les enregistrements dans Factures.
- Pour chaque enregistrement, choisissez la valeur de l'attribut Montant de la source de données.
- Renvoie la somme de tous ces montants.
L'expression calcule une valeur unique, mais cette valeur est ajoutée à chaque enregistrement de l'ensemble de données. Vous trouverez ci-dessous un exemple d’ensemble de données contenant 4 lignes.

Agréger au niveau du sous-niveau
Au lieu de calculer un agrégat sur l'ensemble de l'ensemble de données, vous pouvez également calculer une valeur sur des groupes d'enregistrements.

Vous trouverez ci-dessous un exemple d'expression agrégée permettant de calculer le montant total par fournisseur.

Un niveau d'agrégation est ajouté et la portée de l'expression est définie sur ce nouveau niveau. Vous trouverez ci-dessous un exemple de jeu de données.

L'expression agrégée est calculée une fois pour chaque valeur individuelle au niveau de l'étendue. Cette valeur est ajoutée à chaque enregistrement de cette étendue. Le montant total est donc calculé une fois, puis copié 4 fois dans chaque enregistrement. Le montant total par fournisseur est calculé 3 fois. Comme « Fournisseur A » existe 2 enregistrements, sa valeur est définie sur les deux enregistrements. Comme il n'y a qu'un seul enregistrement pour le « Fournisseur B » et le « Fournisseur C », la valeur est attribuée à l'enregistrement correspondant.
Définir un sous-niveau
Suivez ces étapes pour définir une expression d'agrégat au niveau inférieur.
| Étape | Action |
|---|---|
| 1 | Cliquez avec le bouton droit sur Racine dans le panneau Paramètres de la boîte de dialogue Modifier l'attribut d'expression . |
| 2 | Sélectionnez Ajouter un niveau. |
| 3 | Cliquez sur … niveau et sélectionnez l'attribut de source de données sur lequel vous souhaitez regrouper les valeurs. Dans ce cas Fournisseur. |
| 4 | Cliquez avec le bouton droit sur le niveau de l'attribut sélectionné et sélectionnez Définir comme niveau de l'expression. |
Le niveau sélectionné est indiqué par une flèche.
Structure de l’arborescence
Dans une expression d'agrégation, il est également possible d'accéder à d'autres niveaux que le niveau d'agrégation sélectionné. Nous pouvons utiliser p (pour le parent) et c (pour l’enfant) pour parcourir l’arborescence de haut en bas.
Un nœud a un parent, donc p renvoie un seul nœud, mais peut avoir plusieurs enfants, de sorte que c renvoie une liste de nœuds.
Niveau d'agrégation du parent

Vous trouverez ci-dessous un exemple d'expression d'agrégation basée sur un niveau parent.

L'expression percentage(sum(records.Amount) / sum(p.records.Amount) * 100) calcule un pourcentage pour chaque fournisseur :
- la somme des montants associés à un fournisseur est divisée par la somme de tous les montants.
- l'étendue est déplacée vers le niveau parent, c'est-à-dire la racine.
- le résultat est multiplié par 100 pour le convertir en pourcentage.
Niveau d'agrégation enfant

Vous trouverez ci-dessous un exemple d'expression d'agrégation basée sur un niveau enfant.

L'expression count(c) renvoie une liste de tous les fournisseurs par Type de fournisseur. Étant donné que chaque enfant est un fournisseur, le nombre d’enfants c peut être compté.
Création de vérifications conditionnelles
Pour les expressions d'enregistrement, la fonction if() peut être utilisée pour des vérifications conditionnelles. Cependant, cette fonction ne peut être appliquée que par enregistrement. Il n'est pas possible de vérifier une condition dans un groupe d'enregistrements à l'aide d'une instruction if. La structure arborescente peut être utilisée pour parcourir (des parties spécifiques de) vos données, par exemple pour exprimer des propriétés.

Les fonctions suivantes peuvent être utilisées pour ce type de calculs.
| Function | Description |
|---|---|
exists(Scope, Condition) | Renvoie true si au moins une condition dans Étendue est évaluée comme true. |
forall(Scope, Condition) | Renvoie true si toutes les conditions dans Étendue ont la valeur true. |
Consultez l'illustration ci-dessous pour voir un exemple.

Par exemple, l'expression
exists(records, find(lower(Supplier), 'consulting')
vérifie pour chaque type de fournisseur s'il existe des factures d'un fournisseur avec « consulting » dans le nom.
lower est utilisé pour convertir les noms des fournisseurs en minuscules et rendre la coche insensible à la casse.
Filtrage
Lors de l'agrégation de données, des calculs sont parfois effectués en fonction d'une partie spécifique de vos données. Dans ce cas, la fonction filter() peut être utilisée.

Vous trouverez ci-dessous un exemple d'expression d'agrégation basée sur un filtre.
count(
unique(
filter(
records,
supplier_type = "Machinery"
).Supplier
)
)
count(
unique(
filter(
records,
supplier_type = "Machinery"
).Supplier
)
)
De l’intérieur vers l’extérieur, l’expression est construite de la manière suivante :
-
Récupérer tous les enregistrements dans l'étendue actuelle.
-
Filtrez ces enregistrements afin que seuls ceux dont le type Machine est de type Fournisseur restent.
-
Pour chaque enregistrement filtré, renvoyez la valeur de l'attribut Source de données Fournisseur .
-
Supprimez toutes les valeurs en double de la liste, de sorte que nous n'ayons qu'un seul élément par valeur unique.
-
Comptez le nombre d'éléments restants sur la liste.

Dans l'exemple, le niveau du Propriétaire du cas est défini comme le niveau de l'expression. Cela signifie que l'étendue de l'expression est de calculer une valeur pour toutes les valeurs uniques du Propriétaire du cas. Pour chaque valeur du propriétaire du cas , records est la liste des enregistrements appartenant à ce propriétaire du cas.
L'expression renvoie une valeur pour chaque propriétaire de cas, ce qui indique le nombre de fournisseurs uniques avec le type Machine.
Autres options de filtre
Le menu du panneau Paramètres contient des options permettant d'ajouter un filtre pour les agrégats.

Vous trouverez ci-dessous une description des options du menu Paramètres (Settings).
| Option | Description |
|---|---|
| Activer l'expression de filtre | Permet de saisir une expression en tant que filtre. |
| Activer les commandes de filtrage | Ouvre la boîte de dialogue Modifier les contrôles de filtre dans lequel vous pouvez sélectionner un contrôle de filtre disponible dans la liste. |
| Activer la période de comparaison | Permet d'ajouter une période de comparaison ou une expression pour définir un certain nombre de périodes précédentes à filtrer. |
| Appliquer des filtres d'utilisateur final | Permet d'appliquer les filtres d'utilisateur final disponibles. |
Lorsque vous utilisez les options de filtre du menu Paramètres , le résultat du filtre s'affiche dans le panneau Valeur . Consultez l'illustration ci-dessous pour voir un exemple.

Tri
Le tri peut être utilisé pour déterminer la valeur la plus élevée ou la plus faible ou pour traiter les enregistrements dans un certain ordre.
Lorsque vous avez besoin du premier ou du dernier enregistrement de votre expression, vous pouvez effectuer un tri par niveau des manières suivantes :
- A..Z et Z..A trieront en fonction de la valeur.
- Sur les chaînes, cela sera trié par ordre alphabétique.
- Sur les formats numériques (double, entier), cela triera sur une valeur numérique.
- Sur les formats liés à l'heure (datetime, date), il sera trié par ordre chronologique.
- 0,.9 et 9,0 trient le nombre d'enregistrements dans le groupe.
- Expression vous permet de remplir une expression, qui sera triée en fonction de la valeur, comme décrit ci-dessus.
Pour chacune de ces options de tri, il est possible de définir l'ordre croissant ou décroissant.
Voir l'illustration ci-dessous pour un exemple de tri où le premier utilisateur travaillant sur chaque cas est déterminé.

L'expression d'agrégation first(records.User) détermine le premier User de chaque Case ID . Event end est trié par ordre croissant.