2010-09-24 26 views
3

J'ai un problème de création de 1 groupe qui "spand" sur plusieurs colonnes dans DynamicJasper. Exemple serait quelque chose comme ceci:regroupement sur plusieurs colonnes dans DynamicJasper

i obtenir des données de base, je ne peux pas changer:

id1  id2  id3   id4  id5 

1  Vega Steve  8,000.23 yes 

1  Vega Steve  3,465.33 yes 

2  Minson Mark  123,987.23 no 

2  Minson Mark  3,465.33 yes 

5  Lucky Luck 3,123,465.33 no 

après le regroupement sur le premier rapport 3 colonnes ressemblerait à ceci:

id1  id2  id3   id4  id5 

1  Vega Steve  8,000.23 yes 

          3,465.33 yes 

2  Minson Mark  123,987.23 no 

          3,465.33 yes 

5  Lucky Luck 3,123,465.33 no 

Est ce possible de réaliser en DynamicJasper?

Répondre

0

Oui c'est possible.

Vous pouvez générer un groupe par un rapport.

GroupBuilder gb = new GroupBuilder(); 
DJGroup g = gb.setCriteriaColumn((PropertyColumn) columnname) 
.setGroupLayout(GroupLayout.VALUE_IN_HEADER) 
.build(); 
.firstReport.addGroup(g); 

Vous pouvez ajouter plusieurs groupes.

Créez le même code pour la colonne suivante.
Et s'il vous plaît ajouter dans l'ordre de leur niveau de regroupement.
Comme d'abord ajouter l'entreprise, puis le département et ensuite la désignation.

+3

Merci d'avoir posté, mais ce n'est pas une solution satisfaisante. Avec votre code, vous obtenez toujours plusieurs groupes, 1 groupe par colonne. Je veux que les trois colonnes "agissent" comme un groupe. Si vous modifiez une valeur sur trois colonnes, un nouveau groupe est créé. En fait, une solution est que je peux concaténer toutes les colonnes en 1, mais j'ai un problème avec les noms de colonnes et les styles qui doivent être affichés correctement) – NubAtar