principal. Business Objects Crystal Reports 2008 SP1
Sous-rapports
24
Définition du sous-rapport
• création d'un seul rapport basé sur des tables reliées ou d'un rapport principal contenant un sous-rapport
Avant de choisir entre des tables reliées ou un sous-rapport, il est important de prendre en considération toutes les implications d'un tel choix. Cette question est traitée de manière approfondie dans
Amélioration des performances dans les mises en relation de type un-à-plusieurs
page 718.
En principe, si vous avez des tables indexées, des champs indexés reliés ou des plages limitant les critères de sélection d'enregistrements sur la base des champs indexés, le programme doit lire le même nombre d'enregistrements, que vous travailliez avec des tables reliées dans un seul rapport ou avec des sous-rapports. Cependant, étant donné que chaque sous-rapport est lancé comme un rapport séparé, il peut-être avantageux d'utiliser des tables reliées pour des questions de performance. Voir
page 713.
Fonctionnement de la mise en relation entre le sous-rapport et le rapport principal
La mise en relation entre un sous-rapport et un rapport principal s'établit par l'intermédiaire d'un champ de paramètre.
Lorsque vous sélectionnez un champ de mise en relation de sous-rapport :
• le programme crée, dans le sous-rapport, un champ de paramètre qui permet au rapport principal de lui transmettre les valeurs ;
• le programme se sert du champ de paramètre pour créer une formule de sélection d'enregistrements du sous-rapport ;
• la formule de sélection limite le sous-rapport aux enregistrements pour lesquels le champ de mise en relation est égal à la valeur du champ de paramètre.
Lors de l'exécution du rapport, le programme recherche le premier enregistrement de champ dont il a besoin dans le rapport principal et, via le champ de mise en relation, transmet sa valeur au champ de paramètre du sous-rapport. Le programme crée alors un sous-rapport en sélectionnant les enregistrements sur la base de la valeur du champ de paramètre. Voici un exemple :
690 Guide de l'utilisateur de Crystal Reports 2008 SP1
Sous-rapports
Définition du sous-rapport
24
• Vous créez un rapport de vos clients et un sous-rapport des commandes passées. Vous décidez de créer un lien entre ces deux rapports sur la base du champ ID client.
• Lors de l'exécution du rapport, le programme prend le premier enregistrement de client, et transmet la valeur de son champ ID client dans le champ de paramètre du sous-rapport.
• Le programme exécute alors le sous-rapport des commandes. La formule de sélection de ce sous-rapport ne sélectionne que les enregistrements dans lesquels l'ID client est égal à la valeur du champ de paramètre.
Dans la mesure où cette valeur est égale à l'ID client du premier enregistrement du rapport principal, le sous-rapport contient uniquement les enregistrements contenant ce même ID client. Autrement dit, les enregistrements obtenus correspondent aux commandes du premier client.
• Lorsque le premier sous-rapport est terminé, le programme recherche le deuxième enregistrement dont il a besoin dans le rapport principal, imprime les données du client et transfère l'ID client correspondant dans le champ de paramètre.
• Le programme exécute un sous-rapport ne comprenant que les enregistrements de commandes concernant le second client.
• Le processus se poursuit jusqu'à la fin du rapport.
• Cette opération se déroule en arrière-plan. Indiquez simplement les champs avec lesquels le rapport principal sera relié au sous-rapport et le programme fait le reste. Les valeurs sont transmises par l'intermédiaire du champ de paramètre sans intervention de l'utilisateur.
Remarque :
Lorsque vous affichez l'aperçu d'un sous-rapport relié en cliquant sur le bouton Aperçu avant impression dans la barre d'outils Standard (à partir de l'onglet Conception du sous-rapport), le programme exécute le sous-rapport indépendamment, sans attendre de recevoir une valeur de champ de paramètre du rapport principal et sans évaluer la formule d'onglet. Dans un tel cas, le programme affiche la boîte de dialogue Saisir des valeurs de paramètre vous invitant à définir une valeur.
La valeur saisie dans la zone est la valeur utilisée par le programme pour exécuter le sous-rapport.
Guide de l'utilisateur de Crystal Reports 2008 SP1 691

Lien public mis à jour
Le lien public vers votre chat a été mis à jour.