IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Cognos Discussion :

Condition filtre where dans Cognos reports studio


Sujet :

Cognos

  1. #1
    Nouveau membre du Club
    Développeur informatique
    Inscrit en
    Mars 2007
    Messages
    30
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2007
    Messages : 30
    Points : 27
    Points
    27
    Par défaut Cognos reports studio
    Merci beaucoup

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 45
    Points : 53
    Points
    53
    Par défaut faire un filtre sur une jointure externe ou alors faire un test sur valeur nulle
    personnellement, avec les infos que tu donnes je ferais quelque chose comme ça:

    where
    srRTS.serviceid = rts.SERVICEID
    and uRTS.usagerid = udRTS.usagerid
    and udRTS.demandeid = srRTS.parentid
    and nvl(adrRTS.CODETYPEADRESSE, '0') = '0'

    Normalement, ça devrait mieux fonctionner...

    Par défaut, si adrRTS.CODETYPEADRESSE est nulle tu lui affecte '0' sinon il garde sa valeur.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 45
    Points : 53
    Points
    53
    Par défaut
    tu peux aussi faire quelque chose du genre:

    where
    srRTS.serviceid = rts.SERVICEID
    and uRTS.usagerid = udRTS.usagerid
    and udRTS.demandeid = srRTS.parentid
    and (adrRTS.CODETYPEADRESSE = '0' or adrRTS.CODETYPEADRESSE is null)

    beaucoup d'option sont possible. Après c'est simplement de lecture SQL

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 45
    Points : 53
    Points
    53
    Par défaut le but de ton filtre
    quel est le but de ton filtre?
    jointure externe avec filtre sur une valeur ('0' dans ce cas) et dans le cas de non correspondance

    ou alors est ce un autre cas de figure?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 45
    Points : 53
    Points
    53
    Par défaut il manque une information dans ta requete
    a mon avis il manque une information dans ta requete:

    si tu as la requête suivante:

    select *
    from table1 t1
    , table2 t2
    where
    t1.clef = t2.clef (+)
    and (t2.champs_test is null or t2.champs_test = '0')

    là ta requête devrait fonctionner comme tu veux...

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 45
    Points : 53
    Points
    53
    Par défaut sur quelle base de données
    Salut,

    Sur quelle base de données te bases tu?
    Si tu es sur une base de données de type Oracle ou SQL Server, je persiste à croire que la requête que je t'ai soumis te permettra d'obtenir les résultats que tu veux.

    Le (+) dans la requête est là pour faire l'outer join, mais l'outer join ne peut se faire qu'entre 2 champs de même nature soit sur la même table (requête hiérarchique) soit sur 2 tables différentes.

    A+

  7. #7
    Membre confirmé

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Juillet 2006
    Messages
    224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Morbihan (Bretagne)

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

    Informations forums :
    Inscription : Juillet 2006
    Messages : 224
    Points : 467
    Points
    467
    Par défaut
    Tu ne peux pas insérer le (+) dans le filtre report Studio.

    C'est une syntaxe propre à Oracle, et qui d'ailleurs ne respecte pas les normes SQL.

    Pour solutionner ton problème, il faut que dans ton framework, tu déclare une jointure externe entre ta table principale et celle sur laquelle tu veux appliquer le filtre (en jouant sur la cardinalité de ta jointure)

    ensuite, dans ton filtre, tu pourra faire :

    adrRTS.CODETYPEADRESSE = '0' or adrRTS.CODETYPEADRESSE is null

Discussions similaires

  1. Arrondis sous cognos report studio
    Par Christian_Bale dans le forum Cognos
    Réponses: 3
    Dernier message: 15/06/2012, 09h46
  2. Filtre Cognos Report Studio 8.4
    Par drvercetti dans le forum Cognos
    Réponses: 5
    Dernier message: 17/08/2011, 10h44
  3. cognos report studio
    Par jolio27 dans le forum Cognos
    Réponses: 4
    Dernier message: 07/01/2009, 11h29
  4. Probleme de déploiement, Cognos Report Studio
    Par Mr_sky dans le forum Cognos
    Réponses: 2
    Dernier message: 24/12/2008, 15h15
  5. Totaux dans Cognos Report Studio
    Par Louisa2005 dans le forum Cognos
    Réponses: 1
    Dernier message: 06/06/2008, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo