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 14/12/2011, 15h25   #1
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Par défaut Fonction Max() comportement normal ?

Bonjour,

J'ai créé une table toute simple afin de tester le comportement des fonction Max. et Min. sous Deski.

Ma table se présente comme suit :

Code :
CREATE TABLE CSOESSAI (Col1 CHAR(5), Col2 INT)
La table alimentée :

a 1
a 3
a 5
b 10
b 8

Sous Designer : Col1 est une dimension et Col2 un indicateur sans agrégation (type = Aucun).

Ci-dessous, mes données dans Deski :



J'ai créé une simple variable "varessai" :



N'ayant aucun agrégation de Col2 et selon la définition de Max. donnée dans BO, je m'attends donc à avoir pour a et b le maximum de Col2 soit :

a 5
b 10

A la place, le tableau renvoyé en utilisation la fonction est :



Ce comportement est-il à votre sens normal ou ai-je loupé quelque chose ?

Je vous remercie et bonne journée,

C. Tobini
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 16h20   #2
Membre émérite
 
Avatar de bastoonet
 
Inscription : septembre 2006
Messages : 815
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 815
Points : 843
Points : 843
bonjour,

Apparemment, dans ton cas la fonction max.() ajoute une fonction implicite d’agrégat somme() à ta formule...

J'ai toujours utilisé une fonction d’agrégat dans la définition de mes indicateurs.

As-tu essayer de définir la fonction d’agrégat à somme() et vérifier le tableau que tu obtiens dans ce cas ?
__________________
~~ bastoonet ~~

"Team BAB - Spécialistes BO"
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 16h25   #3
Modérateur
 
Avatar de djam21
 
Homme
Consultant en Business Intelligence
Inscription : janvier 2006
Messages : 560
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : janvier 2006
Messages : 560
Points : 862
Points : 862
Envoyer un message via Skype™ à djam21
Pourquoi le définir en Indicateur alors que tu veux qu'il se comporte en Dimension ?

Sinon essaie çà :
Code :
max([col2] dans ([col1];[col2]))
djam21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 18h04   #4
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Bonjour et merci de la réponse,

Citation:
Envoyé par bastoonet Voir le message
bonjour,

Apparemment, dans ton cas la fonction max.() ajoute une fonction implicite d’agrégat somme() à ta formule...

J'ai toujours utilisé une fonction d’agrégat dans la définition de mes indicateurs.

As-tu essayer de définir la fonction d’agrégat à somme() et vérifier le tableau que tu obtiens dans ce cas ?
Je ne comprends pas : me proposes-tu d'ajouter Somme à la définition de l'indicateur dans l'univers ou Somme() à la variable créée ?
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/12/2011, 18h08   #5
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Bonjour et merci de l'intervention,

Citation:
Envoyé par djam21 Voir le message
Pourquoi le définir en Indicateur alors que tu veux qu'il se comporte en Dimension ?

Sinon essaie çà :
Code :
max([col2] dans ([col1];[col2]))
Pourquoi qu'il se comporte en tant que Dimension ? C'est un élément pouvant être agrégé et en plus il prend un indicateur en input. A moins que je ne comprenne pas bien ta proposition ?

Je vais essayer le code proposé dès demain
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 10h02   #6
Modérateur
 
Avatar de djam21
 
Homme
Consultant en Business Intelligence
Inscription : janvier 2006
Messages : 560
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : janvier 2006
Messages : 560
Points : 862
Points : 862
Envoyer un message via Skype™ à djam21
Essaie de mettre la fonction d'aggrég max dans ton indicateur aussi au niveau de l'univers :

SELECT : max(col2)
FONCTION AGGREG : Max
djam21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 11h03   #7
Membre émérite
 
Avatar de bastoonet
 
Inscription : septembre 2006
Messages : 815
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 815
Points : 843
Points : 843
... je te propose d'ajouter somme() comme fonction d'aggregat dans ton univers dans la définition de ton indicateur et de vérifier ensuite son comportement dans ton même tableau dans u nrapport BO.

... le max.() aura peut etre dans ce cas le comportement souhaité. Je n'ai pas BO sous la main, mais la réponse m'interesse.
__________________
~~ bastoonet ~~

"Team BAB - Spécialistes BO"
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 12h28   #8
Modérateur
 
Avatar de djam21
 
Homme
Consultant en Business Intelligence
Inscription : janvier 2006
Messages : 560
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : janvier 2006
Messages : 560
Points : 862
Points : 862
Envoyer un message via Skype™ à djam21
Ajouter l'aggrégation Somme ne servira pas ici... Il aura comme résultat 9 et 18 sans possibilité d'obtenir les détails.
djam21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 12h55   #9
Membre émérite
 
Avatar de bastoonet
 
Inscription : septembre 2006
Messages : 815
Détails du profil
Informations personnelles :
Âge : 30
Localisation : France

Informations forums :
Inscription : septembre 2006
Messages : 815
Points : 843
Points : 843
..et si ça ne fonctionne pas....peut-être avec

=Max.(<col2>) Pourchaque (<col2>) ?
__________________
~~ bastoonet ~~

"Team BAB - Spécialistes BO"
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 14h22   #10
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Citation:
Envoyé par djam21 Voir le message
Essaie de mettre la fonction d'aggrég max dans ton indicateur aussi au niveau de l'univers :

SELECT : max(col2)
FONCTION AGGREG : Max
A ce niveau, et sans utiliser la fonction Max(), j'obtiens ce que je veux

J'aimerais bien comprendre pourquoi ça ne fonctionne pas, j'avoue que ça me laisse perplexe...
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 14h31   #11
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Je fais une petite réponse générale pour dire que Somme(), Max(), PourChaque... ne fonctionnent pas dans mon exemple.
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2011, 14h48   #12
Modérateur
 
Avatar de djam21
 
Homme
Consultant en Business Intelligence
Inscription : janvier 2006
Messages : 560
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : janvier 2006
Messages : 560
Points : 862
Points : 862
Envoyer un message via Skype™ à djam21
Si tu déclare COL2 en dimension, tu n'as plus de pb... Peut-être que Webi force l’agrégation dès que tu veux faire une formule pour un indicateur...

Va savoir... Un bug...
djam21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 15h33   #13
Membre régulier
 
Inscription : avril 2004
Messages : 284
Détails du profil
Informations forums :
Inscription : avril 2004
Messages : 284
Points : 75
Points : 75
Citation:
Envoyé par djam21 Voir le message
Va savoir... Un bug...
Malheureusement, entre le fait que quelques bugs semblent traîner de ci de là et le fait qu'il n'y ait pas de cours à proprement parlé sur BO, je trouve le développement bien compliqué à prendre en main.
ctobini est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 16h27   #14
Modérateur
 
Avatar de djam21
 
Homme
Consultant en Business Intelligence
Inscription : janvier 2006
Messages : 560
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Luxembourg

Informations professionnelles :
Activité : Consultant en Business Intelligence
Secteur : Finance

Informations forums :
Inscription : janvier 2006
Messages : 560
Points : 862
Points : 862
Envoyer un message via Skype™ à djam21
Des cours ? Si, tu peux tjs payer des formations à SAP

Ils t'en feront avec grand plaisir...
djam21 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/12/2011, 12h51   #15
Invité régulier
 
Inscription : décembre 2008
Messages : 9
Détails du profil
Informations forums :
Inscription : décembre 2008
Messages : 9
Points : 9
Points : 9
Bonjour,

petite précision, lorsque vous dites :
Sous Designer : Col1 est une dimension et Col2 un indicateur sans agrégation (type = Aucun).

En fait le comportement de l'indicateur Col2 (mesure) définit dans le Designer est en premier le comportement au niveau de la requête.
Aucun : n'aura aucun effet au niveau de la requète, pas de "groupe by" !
Sum : Appliquera une somme du champs toujours au niveau de la requète, plus utilisation de la clause "groupe by" !
etc...

Ensuite, il y a le comportement de la mesure au sein du rapport, par défaut BO End User utilise le comportement établi dans la couche Designer.
Pour le cas de 'Aucun', il appliquera par défaut une somme qui est la fonction par défaut, ce qui explique les résultats obtenu.
CF Marc 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 04h53.


 
 
 
 
Partenaires

Hébergement Web