Crystal Reports: variable globale total en cours d'exécution ne s'affichent pas dans l'en-tête
À l'aide de Crystal Reports j'essaie d'afficher le total en cours d'exécution d'un champ de base de données dans l'en-tête où toutes les étiquettes sont.
J'ai tenté de le faire en plaçant le total cumulé (RTversion) dans un champ de formule avec les éléments suivants:
Shared stringvar CurrentVers;
CurrentVers := {#CurrentVers};
et puis, dans la page section d'en-tête j'ai le texte suivant:
Shared stringvar CurrentVers;
EvaluateAFter({#currentVers});
CurrentVers;
avec {#CurrentVers} l'exécution de la 1er plus grand nombre.
Est-ce incorrect?
Mise à jour: L'objectif est d'afficher la version la plus récente dans l'en-tête de près les étiquettes de montrer ce que l'actuel verseion est à des fins de comparaison.
Ma conjecture est que vous tentez d'afficher une valeur avant il a été créé.
ne pas le EvaluateAfter() fonction le dire d'attendre jusqu'à ce que le total cumulé #CurrentVers finitions?
+1 Bonne Question. Même si je sais que c'est une question commune, je n'étais pas en mesure de le trouver ici sur AINSI donc, ce sera un bon point de référence pour les gens.
ne pas le EvaluateAfter() fonction le dire d'attendre jusqu'à ce que le total cumulé #CurrentVers finitions?
+1 Bonne Question. Même si je sais que c'est une question commune, je n'étais pas en mesure de le trouver ici sur AINSI donc, ce sera un bon point de référence pour les gens.
OriginalL'auteur phill | 2009-11-02
Vous devez vous connecter pour publier un commentaire.
En cours d'exécution-les Champs de Total, dans mon expérience, ne fonctionne que dans le pied de page des sections.
Vous aurez besoin de créer un manuel d'exécution total.
Ajouter un champ de formule à la section Détails qui remplit une variable Globale avec tout ce que vous voulez capturer. Quelque chose comme:
Ajouter un autre champ de formule pour la section d'en-Tête. Ajoutez ces deux lignes:
Comment voulez-vous faire un manuel en cours d'exécution totale de l'écran pour la valeur maximale de la currentversion? Avez-vous l'utilisation Maximum de la fonction() dans la section de détails? J'ai essayé beaucoup et il m'a donné un message d'erreur indiquant qu'il ne peut pas évaluer avec WhileReadingRecords().
J'ai pris WhileReadingRecords, définir la currentvers := ... et utilisé le EvaluateAfter() fonction dans l'en-tête et cela a fonctionné.
OriginalL'auteur craig
Créer une formule comme ceci
et le placer dans le groupe en-tête de section.
OriginalL'auteur Avneesh Sharma
J'ai tout compris..
J'ai dû ajouter un sous-rapport au rapport principal. J'ai copié le rapport principal et l'a renommé comme un sous-rapport. Dans le sous-rapport, j'ai ajouté une variable partagée, puis il passa à la partie principale du rapport. L'astuce est de placer le sous-rapport dans le même en-tête de groupe, mais une section distincte au-dessus de la section qui doit être supprimée. J'ai effectivement ajouté les sections suivantes:
Nouvelle section (même groupe-j'ai placé un sous-rapport ici; ne pas supprimer)
Nouvel Article (même groupe - j'ai placé partagé valeur de la variable d'ici; ne pas supprimer)
Article Original (même groupe qui a un en-tête j'ai besoin d'supprimé basé sur un fonctionnement total)
OriginalL'auteur Sarah
Si {#CurrentVers} est un fonctionnement régulier total champ, vous devriez être en mesure de le placer dans l'en-tête de page directement, plutôt que de recourir à un complément de la formule. Je ne vois pas la nécessité, soit de la formule de champ ici, à moins qu'il y a quelque chose d'inhabituel dans la composition de {#CurrentVers} et un "plus grand nombre" en cours d'exécution total ne devrait pas exiger quoi que ce soit hors de l'ordinaire.
Ils affichent, mais, évidemment, ils ne font que refléter les dossiers traités jusqu'à ce point. Mais la question d'origine est loin d'être clair sur ce qu'ils essaient d'accomplir.
OriginalL'auteur MartW
Vous pouvez résoudre ce problème avec un seul champ de formule:
La
WhilePrintingRecords;
forces de la formule pour ne pas être évalué jusqu'à ce que tous les enregistrements ont été lues à partir de la base de données, et donc la formule champ affiche le résultat correct même si elle est placée dans un en-tête.OriginalL'auteur LapplandsCohan
La clé que j'ai trouvé, c'est que le champ de formule étant passé doit être placé dans le sous-état. J'ai placé la mienne dans le pied de page, puis supprimé.
OriginalL'auteur Froghos