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 :

[Cross tab] Travailler avec 3 dataset dans un Cross Tab


Sujet :

BIRT

  1. #1
    Membre habitué Avatar de adil_vpb
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2006
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 326
    Points : 132
    Points
    132
    Par défaut [Cross tab] Travailler avec 3 dataset dans un Cross Tab
    Bonjour,
    Je développe actuellement un état, type tableau croisé dynamique, et je vais vous présenter la structure demandé :

    1 - Afficher la liste des clients dans les lignes.
    2 - Afficher les dates dans les colonnes.
    3 - Afficher le montant des livraisons-encaissement dans les cellules X,Y.

    Maintenant, j'ai travaillé avec le dataset Client afin d'avoir une liste des clients, par la suite, j'ai crée un dataset pour les livraisons, contenant un champ date de la commande que je l'affiche dans les colonnes.

    Mon Cross tab ramène des données correctes (montant des commandes par client & date (mois)).

    Le besoin, comme explique ci-dessus, c'est d'avoir un Cross Tab qui affiche le montant des commandes - celui des règlement par client & date (mois), mais je n'arrive pas à faire ceci dans le DataCube de BIRT.

    J'aurais besoin de votre aide afin de m'éclaircir l'architecture à suivre pour réaliser cet état.(au niveau Groups and Summaries & Link Groups).

    Merci d'avance.

  2. #2
    Membre averti

    Inscrit en
    Avril 2010
    Messages
    178
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 178
    Points : 418
    Points
    418
    Par défaut
    Bonjour,

    En bref, je propose que tu essaies de faire un Joint Data Set à partir de tes deux data set d'origine (Client et Livraison ==> Joint Data Set "ClientLivraison") et de faire le datacube à partir de ce joint data set. Pour ça, il faut un champ commun aux deux dataset pour servir de clé, comme pour une jointure SQL standard.

    Maintenant, je ne suis pas sûr de bien comprendre ta question. Je lis :
    Citation Envoyé par adil_vpb Voir le message
    Mon Cross tab ramène des données correctes (montant des commandes par client & date (mois)).
    Et juste derrière :
    Citation Envoyé par adil_vpb Voir le message
    Le besoin, comme explique ci-dessus, c'est d'avoir un Cross Tab qui affiche le montant des commandes - celui des règlement par client & date (mois), mais je n'arrive pas à faire ceci dans le DataCube de BIRT.
    Je ne dois pas comprendre la différence entre "mon cross tab ramène [...] (le) montant des commandes par client & date" et "Le besoin, [...] c'est d'avoir un cross tab qui affiche le montant des commandes [...] par client et date". Il y a une subtilité que je n'ai pas du saisir.

    Donc si le joint dataset ne correspond pas à ton besoin, j'aurai besoin de plus d'explications, s'il te plait

    Bon courage !

    Edit ----
    En extrapolant certains éléments de ton message (le titre, "3 datasets", le deuxième point, "- celui des règlement "), je suppose qu'il y a un troisième dataset dont tu n'as pas parlé qui contient des données de "montant" différentes des premiers montants qui sont "ramenés" correctement par ton datacube. Mais j'ai besoin de ta confirmation et de plus de détails.

  3. #3
    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
    Bonjour,

    J'aurais également proposé un JointDataSet mais sur Commande et Livraison et non pas Client

  4. #4
    Membre habitué Avatar de adil_vpb
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Août 2006
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 326
    Points : 132
    Points
    132
    Par défaut
    Merci pour vos réponse,

    J'ai utilisé le signe de (-), qui indique la soustraction,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Montant livraison
    -
    Montant Règlement
    =
    Solde client
    C'est ce que j'ai voulu dire, maintenant, j'ai pu résoudre ça, via une seule requête SQL qui ramène les livraison UNION ALL les règlements, en utilisant même nombre et type des champs.

    L'astuce que j'ai fais, c'est que j'ai multiplié le montant des règlement par (-1) [montant_regl * (-1)], pour avoir un solde exact.

    La solution que vous avez proposé, je pense qu'elle est bien, et qu'elle répond à mon besoin.

    Merci beaucoup.

  5. #5
    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 Um?
    Le Cube dans BIRT supporte la modélisation Etoile/Flocon. ( 2.3 et supérieur ).

    Seule limite : une seule table de FAITS à la fois ( donc besoin de Union dans ce cas ).

    Du coup , on peut passer par le Cube SANS avoir recours à des JointDataSet.

    Enfin , dans Actuate BIRT v11 il existe le Union DataSet pour ce qui est de l'Union.

    Ces Union/Joint Datasets dans le rapport nuisent considérablement à la performance. Privilégier une Vue dans la base ( ou proc stoc ) ou alors on moteur de fédération de données ( Actuate Information Objects ).

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

Discussions similaires

  1. Travailler avec nodejs/symfony2 dans la même application
    Par hamzawhy dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 09/04/2015, 16h26
  2. Travailler avec un client dans l'avenir
    Par elajjouri dans le forum Juridique
    Réponses: 8
    Dernier message: 12/02/2013, 16h40
  3. [SSRS] - travail avec plusieurs datasets
    Par IPT-florence-d dans le forum SSRS
    Réponses: 0
    Dernier message: 10/12/2008, 16h18
  4. Est-il possible de travailler avec des index dans les checkboxes ?
    Par beegees dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 04/12/2008, 12h31
  5. Problem rencontré avec Les DataSet dans Visual Studio 2005?
    Par mehdi_scofield dans le forum ASP.NET
    Réponses: 0
    Dernier message: 14/11/2008, 11h40

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