|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juin 2005 Messages : 12 ![]() |
Bonjour,
J'utilise BIRT depuis quelques jours, je commence à bien m'y faire. Mais je me pose une question. Dans un champ de texte (data), je souhaitais concaténer des données provenant de différents DATASET mais je n'ai toujours pas réussi. Ex : dataSetRow["dataset1.champ1"]+dataSetRow["dataset2.champ2"] ... Mais je n'arrive pas à récupérer la valeur d'un champ appartenant à un autre DATASET. J'imagine que c'est possible que c'est quand même quelquechose de basique mais je ne trouve pas. Dans le même principe, j'aimerai tester la valeur d'un champ provenant d'un autre DATASET pour afficher tel ou tel champ du DATASET de mon objet data. Merci d'avance. |
|
|
00
|
|
|
#2 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Bonjour !
C'est possible mais il faut faire des tableaux imbriqués. Tu récupères les données de cette manière : Code :
row["champ_de_ton_dataset_le_plus_haut"]+" "+row._outer["champ_de_ton_dataset_parent"] PS : c'est row._out ou row._outer je ne me souviens plus. Bon courage ! |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juin 2005 Messages : 12 ![]() |
Pour concaténer des données ca marche très bien.
Mais je voulais savoir s'il était possible d'utiliser ce row._outer["champ"] directement dans le Property Binding d'un DataSet ? J'ai essayé mais ca ne fonctionne pas... |
|
|
00
|
|
|
#4 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Pourtant ca fonctionne à merveille
|
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : juin 2005 Messages : 12 ![]() |
J'arrive bien à utiliser un row._outer["champ"] lorsque je veux afficher un champ du "table" supérieur dans un "table" inférieur mais lorsque je souhaite créer la requete d'un "table" inférieur à l'aide du row._outer["champ"] du "table" supérieur ca ne fonctionne pas.
Voila ce que Birt me renvoie : OdaDataSet fact: + Error evaluating Javascript expression. Script engine error: TypeError: Cannot read property "NIVREL" from null Script source: property binding, line: 0, text: "select FACTURE.NUMFACT,TYPEFACT,DAT_FACT,TOTAL_TTC,DAT_ECH,TOTAL_HT,TOTAL_TTC-TOTAL_HT MTVA,DATE_PASS,rtrim(NOM) NOM " +"from FACTURE,RELANCE_TEMP,CAF " +"where FACTURE.NUMFACT=RELANCE_TEMP.NUMFACT " +"and FSELECTION='O' " +"and RELANCE_TEMP.NIVREL='"+row._outer["NIVREL"]+"' " +"and NUMREL="+params["numrel"]+" " +"and RELANCE_TEMP.COD_CLI="+row._outer["COD_CLI"]+" " +"and FACTURE.COD_CAF=CAF.CODCAF " +"order by FACTURE.NUMFACT" Les champs NIVREL et COD_CLI se trouvent bien dans la requete du "table" supérieur. Je ne comprend pas que je puisse afficher le row._outer["NIVREL"] mais pas l'utiliser dans le property binding. |
|
|
00
|
|
|
#6 |
![]() ![]() Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT Inscription : janvier 2005 Messages : 7 299 ![]() |
Hum... tu devrais regarder du côté des propriétés filters dans les tableaux, sisi je t'assure. Et si tu tiens absolument à construire ta requête de cette manière, essaye d'abord d'afficher la requête elle-même et non ce qu'elle te renvoie.
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : juin 2006 Messages : 5 ![]() |
bonjour tout le monde,
j'arrive pas a utiliser "row._outer" lorsque je l'utilise dans un filtre dans un tableau il me lance cet erreur dans la generation d'un rapport: Erreur 0 : data.engine.InvalidFieldName (11 fois) détails : org.eclipse.birt.data.engine.core.DataException: Nom de champ incorrect : _outer at org.eclipse.birt.data.engine.executor.ResultObject.getFieldValue(ResultObject.java:138) at org.eclipse.birt.data.engine.script.DataRow.getColumnValue(DataRow.java:90) at org.eclipse.birt.data.engine.script.JSRowObject.get(JSRowObject.java:243) at org.mozilla.javascript.ScriptableObject.getProperty(ScriptableObject.java:1263) at org.mozilla.javascript.ScriptRuntime.getObjectProp(ScriptRuntime.java:1332) at org.mozilla.javascript.ScriptRuntime.getObjectProp(ScriptRuntime.java:1321) |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com