2011-04-04 5 views
8

Je dois créer un rapport dans lequel le nombre de colonnes change en fonction des données transmises à iReport, tout comme avec un sous-rapport. Y a-t-il un moyen de faire cela?Colonnes dynamiques

Répondre

2

Je suis d'accord avec la réponse d'Ischin, mais je vais élaborer. Le rapport Analyse croisée vous permettra d'avoir des colonnes dynamiques car il vous permet de faire pivoter vos données. Vous pouvez sélectionner un ou plusieurs champs à regrouper pour créer les colonnes. Les valeurs des groupes deviennent les étiquettes des colonnes et vous devez ensuite utiliser des fonctions d'agrégation pour les valeurs du rapport appelé Mesures (par exemple, somme ou nombre). Si vous sélectionnez plusieurs champs, vous aurez plusieurs niveaux de colonnes. Lorsque vous concevez le rapport, vous choisissez la taille des colonnes - elles doivent toutes avoir la même taille. JasperReports est un produit conçu pour créer quelque chose qui imprimera sur un morceau de papier de manière cohérente, comme un PDF. iReport à partir d'au moins la version 5.1.0, n'a pas d'autre moyen de créer réellement dynamiquement des colonnes. Vous pouvez écrire en logique pour afficher ou masquer les colonnes en fonction des paramètres, mais cela serait très fastidieux et ne correspond pas à ce pour quoi JasperReports est conçu. Il serait très difficile, par exemple, de permettre à l'utilisateur exécutant le rapport de sélectionner des paramètres qui permettent à l'utilisateur de contrôler quelles colonnes sont dans le rapport et les positions des colonnes.

+0

Pouvez-vous suggérer d'autres outils de reporting pour cela? – apm