|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mai 2008 Messages : 4 ![]() |
Bonjour,
Tout d'abord, veuillez m'excuser si la question se trouve déjà ici, mais je n'ai pas réussi à la retrouver (toute la nomenclature reste encore un peu nouvelle pour moi...). Voilà, nous cherchons à développer une solution avec BIRT, et un type de paramètre en entrée utilisateur me résiste, à savoir que nous comptons créer nos propres formulaires de saisie des paramètres/lancement du Report. Ma question est donc la suivante : - Comment passer un paramètre qui serait un tableau de structure (par exemple : "Nom", "Date", "Montant"), de 0 à n éléments ? En vous remerciant de votre aide. |
|
|
00
|
|
|
#2 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Bonjour,
Je crois que la réponse se trouve ici : http://www.developpez.net/forums/sho...6&postcount=15 N'hésite pas à demander des précisions |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mai 2008 Messages : 4 ![]() |
Merci pour ce lien, mais malheureusement, je ne comprends pas la démarche.
En fait, je pense que je n'ai pas compris où/quand/comment créer ces méthodes ? Est-ce une Scripted Data Source ? Une classe ? Un paramètre ? Où dans le designer dois-je préciser ces éléments ? Si ce n'est pas dans le designer pourrais-je avoir plus de précisions ? Au mieux j'arrive à trouver où mettre ces infos dans le Data Set, mais comment faire en sorte que ce DataSet soit un paramètre en entrée ??? Y aurait-il un tuto un peu plus complet ? |
|
|
00
|
|
|
#4 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Bon je t'explique en détail alors
Lorsqu'on déclenche la génération d'un état en Java, on crée un objet de type IRunAndRenderTask (ou dérivé proche), nous l'appelerons task. (Pour en savoir plus sur la génération d'un état en Java, voir ce post : http://www.developpez.net/forums/m2962877-/) Pour passer un paramètre à ton état quelqu'en soit le type il faut faire comme ceci : Code Java :
task.setParameterValue("maCle",monObjet); Dans le designer, pour récupérer cette valeur il faudra faire params["maCle"].value (ou params["maCle"] pour les anciennes versions de BIRT). En fait, l'exemple donné précédemment te permet de remplir un DataSet grâce à un objet Java quelconque (tableau, objet, liste, etc.). Pour créer un DataSet de ce type, il faut créer un ScriptedDataSource dans le designer puis un ScriptedDataSet faisant appel à ce ScriptedDataSource. Ensuite, on sélectionne le DataSet que l'on vient de créer et on va dans l'onglet script (onglet placé en dessous de la partie principale du designer). Dans script, on a une liste déroulante contenant notamment les valeurs open et fetch. Il ne reste plus qu'à appliquer l'exemple donné |
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mai 2008 Messages : 4 ![]() |
C'est déjà un peu plus clair.
J'ai maintenant bien compris comment passer le paramètre en Java (de toutes manières, c'est par là que je comptais le faire). Néanmoins, une dernière chose n'est pas clair. Je pensais que pour passer un paramètre il fallait qu'il soit défini en tant que "Parameter' sur le report. Or, là, il semblerait que non. Celà signifie-t-il que dans mes requêtes si je mets params["maCle"].value, il itérera tout seul entre les différentes valeurs de mon Dataset (si j'ai trois "Personnes" par exemple ?) ? |
|
|
00
|
|
|
#6 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Non en fait, le paramètres personnes doit être un tableau ou une liste pour qu'il itère tout seul. (Personne[] par exemple ou List<Personne>)
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com