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

BIRT Discussion :

Récupérer seulement les lignes impaires d'un dataset


Sujet :

BIRT

  1. #1
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut Récupérer seulement les lignes impaires d'un dataset
    Bonjour à tous et à toutes,

    Comment puis je afficher seulement les lignes impaires de mon data set dans un tableau?

    J'ai essayer de créer un group sur row.__numrow%2 == 1
    Ceci fonctionne que lorsque j'ai un résultat total de ligne supérieur ou égal 4 et que ce résultat est pair

    Ensuite j'ai essayer de mettre un filtre sur mon tableau avec row.__numrow%2 equal to 1 mais ceci me génére une erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Filter expression cannot reference to java script object "row.__num".
    Merci d'avance pour vos idées

  2. #2
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut
    La solution est plutôt simple, il suffit de masquer les lignes pairs

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    51
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2011
    Messages : 51
    Points : 37
    Points
    37
    Par défaut
    Salut à toi,

    Tu as essayé de créer directement ta colonne ROW NUM dans don dataset. C'est plus clair je trouve et ça va surement résoudre ton problème.

    Voilà le code pour créer une auto incrémentation de lignes sur un dataset.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select ROW_NUMBER() OVER (ORDER BY cequetuveux) as numLigne, [... tes autres colonnes ...]
    Tu obtiendras un data set identique à celui que tu as sauf que tu as les numéros de lignes en tant que colonnes.
    Ensuite, tu pourras tout simplement utiliser un filtre condition :


  4. #4
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut
    Merci à toi c'est une bonne solution!

    Ceci étant j'en ai trouvé une meilleur :p
    En effet, le champ que tu me demandes de créer existe déjà avec BIRT donc j'ai juste à écrire dans la propriété visbility des lignes que je veux masquer:

    Merci encore

  5. #5
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Tu n'aurais pas mis exactement la même solution dans le problème et en solution ?

    Et je pense plutôt que tu voulais utiliser __rownum et non __numrow. Après, peut être que les deux existent.

    De toute façon, si tu as un doute, tu peux récupérer la formule via l'Expression Builder.

  6. #6
    Rédacteur
    Avatar de David55
    Homme Profil pro
    Ingénieur informatique
    Inscrit en
    Août 2010
    Messages
    1 542
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2010
    Messages : 1 542
    Points : 2 808
    Points
    2 808
    Par défaut
    Effectivement c'était __rownum DSL

    En faite dans mon problème j'avais utiliser les filtres et les groupes. Dans ma solution j'ai utilisé la propriété visibility

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 14
    Dernier message: 11/02/2015, 10h37
  2. récupérer toutes les lignes (même nulles)
    Par aurelie83 dans le forum Requêtes
    Réponses: 3
    Dernier message: 20/02/2008, 09h01
  3. Récupérer seulement les mots de plus de 5 lettres
    Par Tee shot dans le forum Langage
    Réponses: 12
    Dernier message: 20/05/2007, 23h01
  4. récupérer que les lignes paires ou impairs d'une proc ,?
    Par c_moi_c_moi dans le forum Oracle
    Réponses: 5
    Dernier message: 16/11/2005, 18h03

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