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 06/04/2007, 12h05   #1
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
Par défaut Problème urgent de Filtre sur une différence entre requetes

Mon problème est très urgent...
Je réexpose ce problème plus simplement avec un exemple :

J'ai dans mon univers 3 classes :
- une classe ville(avec des objets : ville, nom, prenom)
- une classe gains (avec objet indicateur : gain)
- une classe dépenses (avec objet indicateur: dépense )

Je voudrais un rapport qui m'affiche uniquement les gens dont les gains sont différent des dépenses

ville - nom - prénom - gain - dépenses - différence gain dépense


Je créer 2 requetes
gain : ville-nom-prenom-gain
dépense : ville-nom-prenom-dépense

Je lie ces requetes sur ville, nom, prénom.
Puis j'essaye de filtrer sur différence gain dépense<>0

...mais se filtre ne fonctionne pas correctement, il ne filtre seulement les cas où un des deux montant est null

Des idées ??

Je précise que je suis obligé de faire 2 requetes...
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2007, 14h57   #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
Est-ce que tu as créé une variable de ta différence ?
Si non, essaie d'en créer et de préciser :
Code :
1
2
3
4
5
6
7
Dif = si gain et dépense sont NULL 
            alors 0.
            sinon  si dépense est NULL 
                                alors gain 
                                sinon si gain est NULL 
                                                   alors dépense 
                                                   sinon Gain - dépense
Tu pourras après faire ton filtre sur Dif <>0
cdumas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2007, 15h54   #3
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 tombe exactement sur la même erreur.
C'est à dire que je crée ta variable avec ta formule, le calcul est ok.
Je filtre sur diff<>0, mais je vois toujours des valeurs de diff=0 dans ma colonne.

Ce sont les cas où gain et dépense sont égaux et non nuls !!!
(cela vient je pense du lien entre mes deux requetes...)

POur bien faire il faudrait que je puisse faire un minus entre mes 2 requetes au lieu d'un lien sur l'objet ville
bastoonet est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2007, 08h26   #4
Membre habitué
 
Inscription : mars 2006
Messages : 111
Détails du profil
Informations personnelles :
Âge : 49
Localisation : France

Informations forums :
Inscription : mars 2006
Messages : 111
Points : 116
Points : 116
Salut

Est-ce que pour toutes les classes ville-nom-prenom, tu as une ligne gain ET une ligne depense.

Je pense que ton problème est du à des lignes inexistantes pour les gains ou les dépenses pour une même clsse ville-nom-prenom.


Paris Lupin Arsene 100
NY Jefferson Thomas 0 -130
Moscou Poutine Andrei 120 -0


Je n'ai rien mis pour Arsene Lupin car il n'y a pas de ligne donc dans ce cas, ce n'est pas EstNul, c'est cela N'EXISTE PAS

J'ai souvent été confronté à ce problème n'inexistence de données et cela n'est pas facile à gérer.

Si c'est vraiment cela, tu peux essayer de modifier l'objet en mettant IsNull (si base oracle) sur tes indicateurs. Au niveau de l'objet, tu ne peux rien faire à moins de pouvoir par une variable mettre dans le format de la cellule "INDEFINI=0"

Essayer de créer deux variables :
V_Gain
= Si EstNul(Gain) Ou EstErreur(Gain) Alors 0 sinon Gain

V_Depense
= Si EstNul(Depense) Ou EstErreur(Depense) Alors 0 sinon Depense

Et ensuite de travailler sur ces variables mais tu seras confronté au même problème


A bientôt


Frédéric

___________
Vaut mieux un qui sait que deux qui cherchent...mais deux qui cherchent valent toujours mieux qu'un qui croit savoir...

UNE SEMAINE DE VACANCES A PARTIR D'AUJOURD'HUI... HUMmmmmm
frederic_s est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2007, 11h23   #5
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
merci pour les conseils........j'essaierai ça mardi !!

Joyeuses paques !!
bastoonet 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 21h30.


 
 
 
 
Partenaires

Hébergement Web