|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Bonjour à tous,
Je suis nouveau dans l'utilisation de BIRT et je n'arrive pas à résoudre un problème depuis 2 jours... Mon problème majeur c'est que je souhaiterai récupérer une donnée qui est retourné par une requête. J'ai en fait, une requête A qui demande une table à la base de données. Cette table contient un seul champ. La BD lui fournit, je l'affiche dans le diaporama. Jusqu'ici, pas de problème. Maintenant, je voudrai utiliser le résultat de cette requête A pour l'insérer dans une autre requête que j'appellerai requête B (comme un paramètre). J'ai réussi à créer le paramètre, je suis donc entrain de chercher comment lui affecter la valeur retournée par la requête précédente (requete A). J'ai essayé plein de choses comme getElementById(X) en ayant identifié l'id de la table mais sans résultat... J'avais aussi l'idée d'écrire l'arborescence toute entière, quelque chose comme ça : row["requeteA"] [...... ??? .....] . Je ne sais pas trop comment m'y prendre avec les expressions javascript... Vous avez une idée ? Merci d'avance de votre réponse ! |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
La solution c'est beaucoup plus simple.
Il y a un mode "Dynamique" dans un paramètre. Mode d'emploi : Créer un paramètre de type List Box P1 , cocher Dynamique , choisir source Dataset A. Dans le Dataset B , rajouter une clause du type WHERE monchampB = ? Aller dans Params et mapper le ? avec le P1. P1 peut être un paramètre caché ( Hidden ) si vous ne souhaitez pas que l'utilisateur modifie cette valeur.
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Merci de ta réponse, j'essaierai en début de semaine !
Sinon pour les autres questions, aurait tu une idée de comment faire pour utiliser les champs dans les tables calculées suite à des requetes. J'aimerai bien par exemple, savoir comment je peux accèder (de n'importe où) à un élément ou une table calculée. J'en aurai surement besoin après. J'essaie de trouver la syntaxe javascript mais je m'y connais pas vraiment : nomDataSET["colonne"].cells[?].value (un truc de ce genre là ) |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
ça c'est une autre histoire. Par ailleurs , à l'avenir poser une nouvelle question dans un nouveau thread et avec le bon intitulé svp
![]() Exemple de comment je peux avoir la valeur de la Colonne X dans le Tableau Y On code sur le Détail du Tableau Y sur le OnCreate ( onglet Script ) : Code :
MaVariable = this.getRowData().getColumnValue("X");
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
|
|
#5 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Entendu !
Je viens d'essayer plusieurs choses. J'ai bien réussi à obtenir un résultat correct en écrivant dans le script mais en revanche, je n'arrive pas à appliquer votre démarche sur le paramètre dynamique ! Je crée le paramètre, je lui précise le dataset A avec la selected value column et display text. Je lui donne également une valeur par défaut, je coche Hidden et is required. J'ai voulu tester ce que ça donnait en visualisant par avance ce que le paramètre contenait : params["P1"] mais sans résultat. Il ne m'affiche que la valeur par défaut, j'ai l'impression qu'il y a un problème et qu'il n'arrive pas à accèder aux valeurs renvoyées par la dataset. Quelqu'un a une solution ? |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
Après Réflexion , pas besoin de paramètre dans votre cas.
Un simple sous select ferait l'affaire. Select * from Commandes . . . Where Pays = (Select machin from ma table avec 1 valeur ).
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Je vais avoir besoin de paramètre je pense
Pour vous expliquer brièvement, j'ai un logiciel d'analyse d'application qui s'appelle CAST. Il stocke crée une base de données pour chaque application, dans chacune des BD, on peut trouver des informations comme la robustesse de l'application et j'en passe. Mon but est de créer un rapport générique avec Birt. Je dois donc entrer une base de données de CAST et il me ressort un rapport avec les données de l'application. Pour en revenir à mon problème que je vais concrétiser avec un exemple : - j'ai une requête qui me retourne une technologie avec son ID dans la BD (exemple : -5 Java) - je voudrais obtenir la valeur de cette requête pour l'utiliser plus tard (la ligne renvoyée ne sera pas la même en fonction de l'application !) - Je pourrais donc utiliser la valeur de cette requête pour les autres requêtes C'est pour cela que je veux bien que tu me réexplique les paramètres dynamiques. Je reste toujours également dans l'espoir de faire quelque chose de très simple avec l'ID de l'élément. Je ne sais pas du tout si c'est possible. A chaque fois que je crée un élement (tables, champ d'une table, label, texte, grid ...), dans l'onglet "general", j'ai un element ID. Ce ne serait pas possible de se servir de cet ID dans un script ? |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
Si les données ont 2 sources différentes , il existe également le Join Dataset
![]() Ceci permet de "filtrer" le Dataset 1 en fonction du résultat du Dataset 2. Note : cette approche n'est pas bonne pour une grosse volumétrie de données car ça recupère tout avant de filtrer.
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Oui j'avais lu un point dans une FAQ sur "join data set". Je pense que cela peut marcher dans cet exemple et en théorie mais comme tu dis, c'est conséquent ! Je manipule des BD avec des centaines de tables qui contiennent chacunes des milliers de champs !
Autres solutions ? |
|
|
00
|
|
|
#10 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
Une belle Proc Stoc
![]() Quel est votre besoin très précisement? Ca reste un peu vague pour moi
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
|
|
#11 |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
Je vais essayer d'être précis
Je possède une requête SQL qui me donne toutes les technologies de utilisées dans l'application. J'ai donc une data set (que j'appelle Data set A) qui est une table de deux colonnes : Object_Name et Object_type_id. J'affiche cette data set dans mon rapport et j'applique un filtre sur cette table qui doit me renvoyer que la première ligne de la requete. Maintenant, je souhaite récupérer cette ligne pour avoir accès à la valeur object_type_id. N'oublions pas que mon rapport est générique ! A chaque application analysée, je n'aurais que rarement les mêmes valeurs pour cette requete A. Une fois que j'aurais récupéré cette ligne, je voudrais utiliser la valeur de la colonne object_type_id pour l'insérer dans un paramètre et utiliser ce paramètre pour, à son tour, l'insérer dans une nouvelle requête SQL (data set B). Si vous ne comprenez pas jusqu'ici, je peux vous faire des screenshots, il n'y a pas de problème ! Le problème que je rencontre, c'est au niveau de la création du paramètre dynamique. J'ai essayé de stocker le résultat de la requête A filtrée dans une variable et j'ai envoyé la variable au paramètre en default value mais je pense que je m'y prends mal. Encore une fois, n'y a t-il pas un moyen d'utiliser l'ID de l'élement de la requête A ? Merci en tout cas de ton aide ! |
|
|
00
|
|
|
#12 | |
|
Futur Membre du Club
![]() Étudiant Inscription : avril 2011 Messages : 49 ![]() |
J'ai réussi tout seul comme un grand
J'ai crée mon paramètre et j'ai utilisé la fonction que tu m'as donné pour lui affecter la valeur dans le onCreate ! Si bien que j'ai : Citation:
En fait, il fallait faire un mix de tes deux premiers postes |
|
|
|
00
|
|
|
#13 |
|
Membre Expert
![]() ![]() Inscription : avril 2008 Messages : 1 053 ![]() |
Note : un dataset qui n'est pas utilisé ( un Grid caché ou un Param caché ) ne sera pas exécuté. Donc pas de valeur.
D'ou mon astuce ![]() Sinon , si vous voulez bien marquer Résolu ceux qui sont fermés svp.
__________________
BIRT / Actuate Nouveau ! : Actuate v11 LIVE avec cubes en mémoire, dashboard analythique, accès mobile et exports Office intélligents! Télécharger Evaluation ici : http://www.birt-exchange.com/be/downloads/ Nouveau ! : Tutoriel/Formation sur comment installer et utiliser la version d'évaluation Actuate v11 Vous former ici : http://www.birt-exchange.org/org/wik...h_BIRT_iServer |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com