Skip to main content
Announcements
Global Transformation Awards! Applications are now open. Submit Entry
cancel
Showing results for 
Search instead for 
Did you mean: 
Marie_P
Contributor III
Contributor III

Dimensions calculées depuis une autre dimension calculée

Bonjour à tous 🙂

Tout est dans le titre 🙂 J'aimerais créer une dimension calculée depuis une autre dimension calculée 🙂

J'ai plusieurs supports que je souhaite ranger dans des "tiroirs", qui devront également être rangés dans un plus grand tiroir. Je m'explique 🙂

Je suis entrain de créer actuellement une dimension calculée qui reprend en fonction du support, une catégorie.

Par exemple :

Si 'XXX' alors 'XXX - Print'

Si 'xxx' alors 'XXX - Print'

si 'YYY' alors 'YYY - Print

Jusqu'ici tout va bien ! 🙂

J'aimerais ensuite que si 'XXX - Print' et 'YYY  - Print'       alors     créer une dimension calculée par exemple "GENERAL - PRINT"

Est-ce que cela est possible ? 🙂

Merciii par avance pour vos retours !

1 Solution

Accepted Solutions
Cirdecp007
Creator
Creator

if(Dimension1 = 'Salut', 'MESSAGE BIENVENUE')

Et après tu imbriques si tu n'as pas 300 variantes de Dimension1 :

if(Dimension1 = 'Salut', 'MESSAGE BIENVENUE',

if(Dimension1 = 'Salut2', 'MESSAGE BIENVENUE',

if(Dimension1 = 'Salut3', 'MESSAGE BIENVENUE')

))

View solution in original post

6 Replies
brunobertels
Master
Master

Bonjour 

On peut d'abord essayer de remplacer tes valeurs avec Replace 

replace(replace(replace(Monchamps,'XXX','XXX-Print'),'xxx','XXX-Print'),'YYY','YYY-Print') as Monchamps,

Si tu as des majuscules et minuscules on peut d'abord tout abaisser ou tout relever : 

replace(replace(UPPER(Monchamps),'XXX','XXX-Print'),'yyy','YYY-Print') as Sous_Famille,

et en preciding load 

load * , 

if (wildmatch(Sous_Famille,'*Print') ,'GENERAL - PRINT') as Famille ;

Load 

Sous_Famille,

etc ... 

 

from ... 

 

Marie_P
Contributor III
Contributor III
Author

Merci beaucoup pour votre retour 🙂

Je ne suis pas du tout à l'aise avec le chargement dans le script, c'est pour ça que je cherchais à utiliser des dimensions calculées. Mais je ne vais pas avoir le choix c'est bien ça ? 🙂

Cirdecp007
Creator
Creator

Edit : j'ai des "Print" et des "Imprimer" qui s'affiche une fois sur 2 que cela soit dans vos messages ou mes réponses du fait de la traduction automatique, je n'ai donc pas forcément les bons éléments dans mes exemples ci-dessous mais le principe reste le même...

Admettons que ta dimension calculée  s'appelle Dimension1 avec :

Si 'XXX' puis 'XXX - Imprimer'

Si 'xxx' alors 'XXX - Imprimer'

si 'AAA' alors 'AAA - Imprimer

 

Pour faire une Dimension2 , j'aurais fait :

=Si(right(Dimension1,5)='Imprimer','GENERAL - IMPRIMER',Dimension1)

Ce qui donne : Si les 5 derniers caractères de Dimension1 correspondant au mot Print alors j'écris GENERAL - PRINT sinon j'indique Dimension1. On peut remplacer la dernière Dimension1 par ce qu'on veut. On peut, par exemple, mettre 'Autres' pour faire un regroupement de toutes les valeurs qui ne finissent pas par le mot Print.

On peut également imbriquer des fonctions if() en représentant l'exemple :

=Si(Dimension1=' XXX - Imprimer ,'GENERAL - PRINT',If(Dimension1=' YYY - Imprimer ,'GENERAL - PRINT',Dimension1))

Cela donne Si Dimension1 correspond au texte  XXX - Imprimer alors sur l'affiche GENERAL - PRINT sinon si Dimension1 correspond au texte YYY - Imprimer alors sur l'affiche GENERAL - PRINT sinon sur l'affiche Dimension1

Marie_P
Contributor III
Contributor III
Author

Merci beaucoup 🙂

J'ai voulu simplifier mon exemple mais du coup je vous ai induit en erreur... Malheureusement la dimension1 ne finit pas toujours pas "Print" donc je ne peux pas utiliser cette condition de 5 caractères..

Mais vous m'avez mis sur la piste, je vais creuser 🙂 Merci !

Marie_P
Contributor III
Contributor III
Author

J'ai essayé avec if(Dimension1) = 'Salut', 'MESSAGE BIENVENUE'

 

Mais j'ai l'erreur suivante : "Nom de champs incorrect : Dimension1"

Cirdecp007
Creator
Creator

if(Dimension1 = 'Salut', 'MESSAGE BIENVENUE')

Et après tu imbriques si tu n'as pas 300 variantes de Dimension1 :

if(Dimension1 = 'Salut', 'MESSAGE BIENVENUE',

if(Dimension1 = 'Salut2', 'MESSAGE BIENVENUE',

if(Dimension1 = 'Salut3', 'MESSAGE BIENVENUE')

))