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 :

Faire une limit dans un Group


Sujet :

BIRT

  1. #1
    Membre chevronné
    Avatar de DelphiCool
    Homme Profil pro
    Ingénieur de production
    Inscrit en
    Mars 2002
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur de production
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 187
    Points : 2 198
    Points
    2 198
    Par défaut Faire une limit dans un Group
    Bonjour,

    J'ai un rapport Birt qui contient une requête assez compliquée.

    Dans mon rapport je fait un group
    Mais je souhaite limité le nombre de résultat dans détails.

    Je n'ai pas encore trouvé comment faire.
    Hiacine

    Quand on veut, on peut...

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut Top
    Il y a un filtre très simple à rajouter sur le Détail ( au niveau du Groupe ) : Top 100 meilleures valeurs par exemple.

  3. #3
    Membre chevronné
    Avatar de DelphiCool
    Homme Profil pro
    Ingénieur de production
    Inscrit en
    Mars 2002
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur de production
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 187
    Points : 2 198
    Points
    2 198
    Par défaut
    Peux tu préciser stp
    le cheminement surtout.

    Car j'arrive à créer le filtre mais sur le groupe
    Hiacine

    Quand on veut, on peut...

  4. #4
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2009
    Messages
    529
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2009
    Messages : 529
    Points : 836
    Points
    836
    Par défaut
    J'ai eu le même problème, je ne suis pas non plus arrivé à appliquer des fonctions ou des tris sur le détail du groupe. Stefan donnera peut être une méthode plus simple, perso je l'ai réglé en reproduisant plus ou moins le top N avec un tout petit peu de scripts:

    - créer un compteur en variable de rapport (par ex: 'groupCount')
    - Réinitialiser le compteur au début de chaque groupe, sur l'évènement onCreate de l'entete groupe: var["groupCount"]=1;
    - Incrémenter le compteur pour chaque ligne détail, sur l'évènement onCreate des lignes: var["groupCount"]++;
    - Sur la propriété 'Visibility' de la ligné détail, on coche 'Hide' avec la condition var["groupCount"]>params["TopN"];

    Dans l'exemple joint, "TopN" est un paramètre de rapport donnant le nombre de lignes détail à afficher.
    On peut trier l'ensemble de la table par ordre décroissant sur la colonne choisie pour représenter le top N (dans l'exemple, c'est la colonne "quantité commandée").
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  5. #5
    Membre chevronné
    Avatar de DelphiCool
    Homme Profil pro
    Ingénieur de production
    Inscrit en
    Mars 2002
    Messages
    187
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur de production
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2002
    Messages : 187
    Points : 2 198
    Points
    2 198
    Par défaut
    Merci domino

    c'est un peut de la triche parce qu'on ne s'arrete pas au 5 eme élément, on liste toutte les ligne sans toute les afficher.

    Si la table est énorme le traitement sera très long
    Hiacine

    Quand on veut, on peut...

  6. #6
    Membre éclairé
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2009
    Messages
    529
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence

    Informations forums :
    Inscription : Mai 2009
    Messages : 529
    Points : 836
    Points
    836
    Par défaut
    Tu as raison. Ceci dit si la table source est énorme je pense qu'il faut travailler au niveau du dataset, voire en amont tout dépend du "énorme" en question, mais c'est un tout autre débat

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Avril 2008
    Messages
    1 143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 143
    Points : 1 353
    Points
    1 353
    Par défaut table
    Si la table est énorme , il faut faire un curseur dans le SQL avec un top 5 à ce niveau là. De cette façon on récupère seulement la donnée pertinente.

    Faut pas oublier que BIRT est un outil de restitution, pas un outil de "bidouille dans les données"

    Dans le volet commercial de BIRT , il y a du in-memory qui résout ce problème de "vitesse" car on passe à la mili-sec d'accès à la donnée.

Discussions similaires

  1. faire une somme dans un état
    Par PAINCO dans le forum Access
    Réponses: 1
    Dernier message: 23/06/2005, 20h41
  2. Faire une pause dans le programme
    Par shinobi dans le forum Access
    Réponses: 6
    Dernier message: 13/06/2005, 17h37
  3. [MFC] Faire une pause dans un thread
    Par Kevgeii dans le forum MFC
    Réponses: 3
    Dernier message: 21/02/2005, 12h49
  4. Comment faire une insertion dans un fichier texte ?
    Par Isa31 dans le forum Langage
    Réponses: 10
    Dernier message: 28/12/2004, 10h06
  5. [XSL]faire une balise dans une balise??? (ComboBox)
    Par rastoix dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/05/2003, 09h34

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