Bonjours à tous,
Je suis en train de faire un rapport dans le cadre d'un cours avec iReport. Tout va très bien mais j'arrive à un problème, que je n'arrive pas à résoudre.
Imaginer un rapport qui représente chaque ligne d'une facture. J'ai des éléments divers, ainsi qu'une quantité, un prix et le sous-total qui représente quantité * prix. Jusqu'ici, pas de problème.
Voilà : je veux, dans le columnFooter, calculer tous les sous-totaux pour donner un nouveau sous-total, sur lequel j'ajouterai les taxes. Pour y parvenir, j'utilise l'agrégat SUM(quantité * prix). Mais évidement, je dois utiliser un GROUP BY pour permettre la somme de ce faire. Le problème, c'est qu'il ne m'autorise pas à faire un GROUP BY uniquement sur un champs de ma sélection : je dois les insérer toutes. Cela pause donc problème, car je fais un GROUP BY PK_maClePrimaire, ce qui n'est pas pertinent. Si j'enlève ne serait-ce qu'un seul élément du GROUP BY, je reçoit comme erreur :
Donc j'ajoute tous les champs dans mon GROUP BY, et j'exécute... et quel joie de me rendre compte que mon grand SousTotal est identique à mon dernier petit SousTotal !!!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Error: SQL problems:La colonne 'blablabla.blablabla' n'est pas valide dans la liste de sélection parce qu'elle n'est pas contenue dans une fonction d'agrégation ou dans la clause GROUP BY.
Donc, pourriez-vous m'aidez à trouver ce problème, je dois finir sa pour demain 8h30.
Merci.
Drew.
Partager