Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !
Voir l'indexle 03-01-2022 05:40 AM - dernière modification le 03-01-2022 11:44 PM par StephV
Notre objectif sera de comparer 2 tables ayant la même structure avant de passer en production le processus (un workflow Alteryx par exemple) qui alimente la nouvelle table en remplacement de l'ancien.
Pour illustrer ce cas d'usage, je vais m'appuyer sur les 2 tables suivantes :
Table de production :
Il est important d'avoir un identifiant unique dans les 2 tables, si ce n'est pas votre cas vous pouvez en créer un avec l'outil ID d'enregistrement.
Table de développement :
Les éléments surlignés en jaune sont les éléments non identiques par rapport à la table de production.
J'utilise 2 tables de ma base de données SQL Server dans cette démonstration :
Je tague ensuite les 2 environnements à l'aide d'une Formule :
Ceci me permettra d'identifier la provenance des données.
Et avec un Union à la suite, nous en sommes là :
La structure des données est celle-ci (les données de Prod et Dev ont été empilées) :
A - La théorie
Pour bien comprendre cette étape, voici un schéma de la structure des données avant et après.
Les données en entrée...
...peuvent être schématisées ainsi :
Et les données attendues en sortie...
... suivent le schéma ci-dessous :
B - La pratique
En pratique, nous avons besoin de 2 outils : Transposer et Tableau croisé dynamique
Nous fixons l'ID et l'environnement pour faire pivoter le reste des données ainsi :
Nos données ont cette structure à présent :
Pour le tableau croisé dynamique, nous conservons l'ID et la colonne Name en colonnes.
Les environnements (Dev et Prod) serviront d'en-têtes tandis que les valeurs (dans la colonne value) viendront alimenter le coeur du tableau :
Un tri des données pour plus de clarté et un filtre vérifiant si les données de Dev sont équivalentes aux données de Prod et le tour est joué !
Vous disposez ainsi des données sans regressions (sortie T) et des erreurs (Sortie F).
Pourquoi ne pas partager ce workflow en libre accès sur la Gallery ?
Chaque utilisateur (qu'il utilise Alteryx ou non) pourrait ainsi faire ses tests de non régressions.
Pensez aux développeurs qui changent une règle de gestion dans un flux d'alimentation, quid des utilisateurs métier qui doivent faire de la remontée d'information à plusieurs et doivent valider la consolidation ? Les cas d'usages sont nombreux.
Transformation en application analytique
La première étape consiste à transformer ce workflow en application analytique pour permettre une interaction.
Nous ajoutons 2 Zones de texte :
L'action met à jour le nom de la table de la base de données :
Sur la Gallery
Une fois publiée, l'application peut-être placé dans un District.
Le mien se nomme Self Service by IT.
L'application publique est executable par tous :
Lors du lancement, je peux choisir les tables à comparer :
Et connaître les écarts sur la Gallery :
Voilà qui devrait vous aider dans la validation de la conformité de vos données et aussi enrichir les services que proposent votre Gallery.
Le workflow est en pièce jointe.