|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre du Club
![]() Consultant SI Inscription : février 2011 Messages : 45 ![]() |
Bonjour,
Dans un calc script, je voudrais écrire un FIX qui me placerait sur certains membres contenant une chaine. Disons que j'ai 3 années (2008 à 2010) de 12 mois. Disons que je veux faire un FIX sur les mois de janvier. Donc le fix portera au final sur 2008_jan , 2009_jan et 2010_jan. Il y aurait pas un moyen d'écrire : "Les membres dont le nom contient "jan"" ? Merci d'avance, |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : mai 2008 Messages : 3 ![]() |
Sauf erreur de ma part, il existe une fonction @SUBSTRING qui permet d'extraire une partie du nom du membre mais cela t'obligerai a non pas faire un FIX mais plutot a utiliser le IF(@SUBSTRING(Année,6,3)="Jan" mais je ne suis pas sur que cela soit tres performant. J'opterai plutot pour la solution de creer une dimension Annees et une dimension Mois afin de croiser plus facilement les données...
Bien cordialement |
|
|
00
|
|
|
#3 |
|
Membre du Club
![]() Consultant SI Inscription : février 2011 Messages : 45 ![]() |
En fait quand j'utilise un IF dans mon FIX, j'ai l'erreur essbase suivante :
Error: 1012061 The CALC command [IF] can only be used within a CALC Member Block PS : Et j'ai la même erreur si j'utilise le IF seul. |
|
|
00
|
|
|
#4 | |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Citation:
Code Calc Script :
fix(@match(dim_temps, "????_jan")) |
|
|
|
00
|
|
|
#5 | ||||
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Citation:
Citation:
Code :
PS : attention aussi au double égal == à utiliser pour les comparaisons. |
||||
|
|
00
|
|
|
#6 | |||||
|
Membre du Club
![]() Consultant SI Inscription : février 2011 Messages : 45 ![]() |
fix(@match(Année, "????_jan")) compile bien.
Je lancerais le script demain matin, et je vous dis si cela fait bien ce qui est attendu. Par la voie du IF, j'ai une nouvelle erreur : Code :
avec MY_INDICATOR : le nom de mon indicateur. J'ai l'impression qu'il considére l'année en number alors que c'est (évidemment) du text au niveau mois. Ca se confirme d'ailleurs car si je tente : Code :
Citation:
|
|||||
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
Oui, en fait le IF travaille toujours sur la valeur des membres, jamais sur des métadonnées. Suite à la suggestion de bulgom, je me suis dit que le @SUBSTRING devrait arriver à le forcer, mais non.
|
|
|
00
|
|
|
#8 |
|
Membre du Club
![]() Consultant SI Inscription : février 2011 Messages : 45 ![]() |
Pas grave.
En tous cas je te confirme que ton : marche bien et je marche donc résolu. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com