Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !
Voir l'indexBonjour,
Je voudrais savoir s'il est possible d'utiliser dans l'outil Filtre un caractère générique pour qu'il affiche tous les résultats comme le caractère * utilisé dans les requêtes SQL
En effet j'utilise en entrée une liste de pays avec des valeurs, ensuite un outil filtre pour filtrer le pays.
A ce filtre est connecté un outil textbox et un outil action pour que l'utilisateur choisisse le pays.
La formule du filtre est [Pays]=="ParPays".
Cela fonctionne bien pour un pays saisi mais je voudrais pouvoir sortir tous les résultats si l'utilisateur ne saisit rien, saisit un caractère générique ou (Tous) par exemple.
Merci pour votre aide
Domart
Bonjour,
oui, cela est tout à fait possible en utilisant la mise à jour du filtre à l'aide d'une formule dans l'action.
Voici la formule utilisée:
if [#1]="*" then "[Pays]=[Pays]" else "[Pays]=" +'"' + [#1] + '"' endif
Qui signifie que si la donnée entrée par l'utilisateur est une étoile alors nous utilisons une condition toujours vraie: [Pays]=[Pays] sinon nous utilisons la valeur entrée.
En pj le workflow.
Si celui-ci répond au besoin, n'hésitez pas à marquer la solution comme approuvée.
Merci :-)
Merci beaucoup. Cela fonctionne bien.
Mais je n'ai pas pu ouvrir votre workflow exemple car il a été créé avec une version plus récente.
Pourtant ma version est 2018.3.4.51585.
Pour utiliser un workflow créé avec une version ultérieure d'Alteryx Designer, éditez simplement le fichier .yxmd (ou .yxwz pour une application analytique) avec un éditeur texte type notepad++ par exemple et modifiez le tag de début, par exemple dans votre cas:
<AlteryxDocument yxmdVer="2018.3"> et sauvegardez. Vous pourrez par la suite l'ouvrir avec votre version.
Merci pour ta réponse mais le workflow que tu as posté est un fichier yxzp.
L'éditer avec Notepad ne donne rien => que des caractères illisibles.
Merci pour ton aide
Le fichier a été mis à jour dans la première réponse. Il faut l'ouvrir en double cliquant dessus, cela va décompresser l'application.
Cdlt.
J'aime bien ta solution William, c'est malin :)
Pour apporter ma pierre à l'édifice, j'optimisera la formule en remplaçant [Pays]=[Pays] par 1
Ce qui donnerait :
if [#1]="*" then 1 else "[Pays]=" +'"' + [#1] + '"' endif
Ainsi, on s'assure qu'Alteryx n'effectue par une comparaison de chaîne de caractère potentiellement coûteuse en ressource machine.
Sur des millions de lignes, le gain de performance peut être significatif.