Bonjour!
Juste pour le contexte : j'utilise un crosstab dans lequel j'affiche un champ de base contenant des données de types String. Les données de ce champ sont en String, mais j'ai beaucoup de Strings avec des valeurs numériques du style "2.0", "59.976", etc.
Aussi, en sélectionnant uniquement les Strings qui contiennent des valeurs numériques, j'arrive à faire des calculs en utilisant les aggrégations de BIRT de type Average (moyenne), Standard Deviation(écart type), etc.
Mon problème est que j'aimerais ne pas avoir à pré-sélectionner dans ma requête SQL les Strings contenant des valeurs numériques. J'aimerai plutôt pouvoir tout sélectionner, et que BIRT fasse le calcul quand le String est une valeur numérique et qu'il mette " " sinon.
Actuellement, je récolte des erreurs "Can not convert the value of march 13, 2008 to Double type." dès que je veux faire des aggrégations l'ensemble des Strings (contenant donc aussi des dates par exemple).
Savez-vous si on peut pas mettre un traitement du genre:
1) vérifier que le string peut être casté en float avant de tenter l'aggrégation
2) OU mettre un bloc try catch sur l'aggrégation
Si oui, où dois-je placer ça dans mon rptdesign?Dans le champ Filter Condition de l'aggregation builder?
Merci d'avance ,
Jeff
Partager