2 votes

Regroupement de Crystal Report en fin de page

J'ai un rapport Crystal avec des groupes, il y a environ 3 à 4 groupes par page.

Mais à la fin de la page, un groupe est divisé entre deux pages, et parfois il n'y a que le nom du groupe, mais les détails du groupe sont sur l'autre page.

Je me demandais s'il existait un moyen de forcer UNIQUEMENT le groupe qui s'étend sur deux pages à commencer à la page suivante.

J'utilise le C# avec Visual Studio 2008.

Regards,

1voto

Kangkan Points 7119

Il existe une option qui permet de la définir et qui s'appelle "Rester ensemble". Consultez la page des propriétés (dans la section expert) du groupe et cochez l'option "Rester ensemble". Cela résoudra votre problème.

Il existe également des options pour "Nouvelle page avant" et "Nouvelle page après" pour chaque section. Vous pouvez insérer un saut de page en conséquence.

alt text

Comme l'a dit Mark, il est très compliqué de savoir si un groupe (avec son contenu et son pied de page) pourra être intégré dans la partie restante de la page. Ainsi, la méthode naturelle consiste à démarrer un groupe à partir d'une nouvelle page et à répéter le groupe dans l'en-tête de la page si nécessaire.

1voto

La réponse simple est de commencer une nouvelle page à chaque changement de groupe.

Il n'existe pas de moyen simple de déterminer si la combinaison de l'en-tête de groupe, des détails du groupe et du pied de page du groupe doit être répartie sur deux pages (afin de pouvoir ensuite créer une nouvelle page pour l'en-tête de groupe). La façon normale de traiter ce problème est de cocher l'option "garder ensemble" dans chacune des sections de groupe (comme décrit par Kangkan), et de répéter les éléments d'en-tête si nécessaire dans les titres de page.

Il existe une méthode compliquée pour y parvenir : il s'agit de déterminer la quantité de documents déjà imprimés sur la page en cours, puis de calculer la taille du prochain groupe combiné et de saisir une formule conditionnelle dans la section En-tête de groupe en fonction de l'option Nouvelle page avant. Cependant, elle est assez délicate à écrire et difficile à maintenir, car la formule de pagination conditionnelle devra être réécrite en cas de modification de la longueur de l'une des sections en question.

EDIT - répétition des éléments d'en-tête de groupe dans les en-têtes de page -

Supposons que vous vouliez répéter l'élément de regroupement sous les en-têtes de colonne, lorsqu'un groupe est réparti sur deux pages :

  • Divisez la section existante des titres de page en deux sous-sections, avec les titres de colonne dans la première sous-section ;
  • Ajoutez l'élément de regroupement à la sous-section du deuxième titre de page ;
  • Dans l'expert de section, définissez la formule conditionnelle de l'option Supprimer (pas de descente) pour la sous-section de l'en-tête de la deuxième page comme suit RecordNumber = 1 or Previous ({fieldname}) <> {fieldname}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X