Précédent   Forum des professionnels en informatique > Logiciels > Solutions d'entreprise > Business Intelligence > Business Objects > Deski
Deski Forum d'entraide Deski (client lourd)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2006, 15h27   #1
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
Par défaut Editeur de variable

Bonjour à tous,

j'essaie de faire des calculs avec l'eidteur de variable mais quand je fais un calcul a partir d'une fonction il me met :
erreur de syntaxe (DMB0007)


voici mon code :
Code :
1
2
 
=Nombre(<No(Achat Global)>)(Comparer(<No(Achat Global)> , "AA+??-????") = 1)
si vous avez desidées, je suis preneur.

Merci
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 16h45   #2
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 103
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 103
Points : 32
Points : 32
La fonction comparer s'utilise dans un contexte si alors sinon

Code :
1
2
 
=SI (Comparer(<No(Achat Global)> , "AA+??-????") ) alors (<No(Achat Global)> , "AA+??-????")
Je pense que c'est plutôt quelque chose de ce genre là, mais je n'ai pas testé
cdumas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2006, 17h37   #3
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
j'ai testé cela

Code :
=Si (Comparer(<No(Achat Global)> , "AA+??-????")=1) Alors 1 Sinon 0
mais il me met une erreur de type de données incorrecte....
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/11/2006, 09h02   #4
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 103
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 103
Points : 32
Points : 32
Bonjour,

Il ne faut pas mettre

Code :
1
2
=Si (Comparer(<No(Achat Global)> , "AA+??-????")=1) Alors 1 Sinon 0
mais
Code :
1
2
=Si (Comparer(<No(Achat Global)> , "AA+??-????"))Alors 1 Sinon 0
cdumas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2006, 16h04   #5
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
ha merci beaucoup, pour cette formule ca passe nickel
mais pour celle la

Code :
1
2
 
=Nombre(<No(Achat Global)>)(Comparer(<No(Achat Global)> , "AA+??-????") = 1)
j'ai remplacer par ca
Code :
1
2
 
=Nombre(<No(Achat Global)>)(Comparer(<No(Achat Global)> , "AA+??-????") )
mais j'ai toujours une erreur de syntaxe mais sur la fonction Comparer....

as-tu une idée ??
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2006, 10h55   #6
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 103
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 103
Points : 32
Points : 32
En fait je pense que la fonction comparer ne peut pas être utilisée de cette manière là.

Code :
1
2
 
=Somme (Si Comparer(<No(Achat Global)> , "AA+??-????")  Alors Nombre(<No(Achat Global)>) )
Je pense que ce code fourni ce que tu cherche.
cdumas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2006, 14h14   #7
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
ha merci on y arrive presque !

le probleme pour ce champs c'est que je ne peux pas le mettre tout seul, il faut que je le mette avec d'autre champs or comme tu as du certainement le comprendre, je souhaite compter le nombre d'achat qui sont du type "AA...."

la si je le met tout seul, il m'afficher #ERR...

As tu une idée?

Merci du coup de main
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/11/2006, 14h33   #8
Nouveau Membre du Club
 
Inscription : avril 2006
Messages : 103
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 103
Points : 32
Points : 32
Il faut que tu vérifie tes contextes, dans la doc, il y a une piste par type d'erreur.

Essaye de voir, ce peut être une erreur à cause de "Somme", de "Nombre" ou du "Si", c'est pas le même genre de solution à appliquer.
cdumas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 14h45   #9
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
Je suis de retour,

ba j'ai toujours des souci avec cet editeur de variable au niveau de la syntaxe, il n'y aurait pas de doc plus complete que celle comprise dans l'appli car quand je fait un truc du style :

Code :
1
2
 
=Somme(<Total Ht(Achat Global)> >)(Comparer(<No(Achat Global)> , "AA+??-????"))
ce qui a pour but de faire la somme où le No sont du type AA+....

car ce que tu avais mis:

Code :
1
2
 
=Somme (Si Comparer(<No(Achat Global)> , "AA+??-????")  Alors Nombre(<No(Achat Global)>) )
et equivalent à :
Code :
1
2
 
=Si Comparer(<No(Achat Global)> , "AA+??-????")  Alors Nombre(<No(Achat Global)>)
as tu une idée?
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 16h38   #10
Invité régulier
 
Inscription : décembre 2006
Messages : 25
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 25
Points : 5
Points : 5
Bonjour,

j'ai eu pas mal de pb avec le OU sous BO XI....
J'en suis arrivée à la conclusion que seul un = dans une clause OU fonctionne de manière stable.
Je souhaitais faire :
=Nombre(<CA_Mois>) Où (<CA_Mois>>1000)
et j'avais toujours une erreur de syntaxe... Par contre avec =Nombre(<CA_Mois>) Où (<CA_Mois>=1000)
ca fonctionnait bien...
est ce le meme probleme ?

Si oui, j'ai contourné en faisant une requete a part

Bon courage !
marine26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 16h44   #11
Membre du Club
 
Développeur informatique
Inscription : septembre 2005
Messages : 145
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : septembre 2005
Messages : 145
Points : 45
Points : 45
Merci de ta reponse,
disons que le probleme que tu pose va venir prochainement donc merci de cette solution en fait j'utilise plutot un genre de LIKE et non pas un =.

depuis tout a l'heure j'en viens a me dire que pour des calcul comme tu as proposé et les miens il faut passer par une autre requete.
car lorsque je veux utilise mon champs seul, il me plante une erreur de calcul : #CALCUL et alors la joker.... je demande l'avis du public...
TangoZoulou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2006, 17h38   #12
Nouveau Membre du Club
 
Inscription : avril 2003
Messages : 33
Détails du profil
Informations personnelles :
Âge : 29

Informations forums :
Inscription : avril 2003
Messages : 33
Points : 28
Points : 28
Il existe un autre moyen de contourner le problème, il s'agit de créer une variable de catégorie. Je m'explique en reprenant le cas où l'on veut CA > 1000.

On crée une variable cat_CA (dimension) définie de la manière suivante :

=If(<CA> > 1000) Then "> 1000" Else "< 1000" (on peut bien sûr imbriquer autant de "if...then...else" que désiré)

ensuite dans la colonne du tableau on indique la formule suivante :

=<CA> Où(<cat_CA> = "> 1000")

Cette astuce permet de réduire le nombre de requêtes.
Eddy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h16.


 
 
 
 
Partenaires

Hébergement Web