Question

Dans un rapport, je dois implémenter des champs de durée (par exemple la durée d'une activité).À la fin du rapport, un résumé basé sur celui-ci devrait être inclus. Ni Crystal Reports ni Active Reports ne prennent en charge les champs TimeSpan.Je ne souhaite utiliser aucune formule ou autre solution de contournement.Il suffit d'afficher les champs TimeSpan (comme 1:45, 45:23, 0:30) et d'afficher le résumé à la fin (comme 109: 20).

Une suggestion?

Était-ce utile?

La solution

Il est difficile de dire avec certitude sans connaître plus d'informations, comme pourquoi vous ne voulez pas utiliser de formules et s'il s'agit d'un type de données TimeSpan dans SQL Server ou s'il est stocké d'une autre manière dans la base de données, ou s'il s'agit d'un calcul en quelque sorte (par exemple dans le code de l'application), etc ...

Sans plus d'informations cependant, une formule est le bon moyen de résoudre ce problème dans ActiveReports ainsi que dans Crystal Reports. Puisque vous avez besoin d'un résumé, dans ActiveReports (où j'ai le plus d'expérience), je dirais que la meilleure façon de le faire est de saisir la valeur de la période sous forme d'une valeur numérique unique sous forme de nombre de minutes . Cela vous permettra d'utiliser les fonctionnalités normales de récapitulation ActiveReports sans code, comme décrit ici .

Ensuite, pour formater le nombre dans le texte de sortie souhaité, utilisez une formule dans la propriété DataField de la zone de texte telle que: =Math.Floor(Minutes/60) + ":" + (Minutes % 60). Pour plus d'informations sur l'utilisation de formules dans la propriété DataField, ici et ici .

Scott Willeke
GrapeCity

Autres conseils

Essayez ma fonction ElapsedTime () ;utilisez-le avec la formule de chaîne d'affichage du champ de résumé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top