ONYX - 9.0 - Utilisation
Gestion des pieds de documents en mode XML
Sommaire
Introduction
Cette section décrit la manière de procéder pour gérer les pieds de documents de hauteur fixe de manière sur la dernière page d'un document comportant des sauts de pages automatiques.
Prérequis
- Avoir de bonnes bases sur le fonctionnement de Designer en mode XML
- Connaitre la structure du fichier XML Designer
Problématique
Lorsqu’un document contient une longue liste répartie sur plusieurs pages et comportant un pied de page uniquement sur la dernière (pied de document), il est généralement souhaitable que la liste occupe tout l’espace disponible sur les pages intermédiaires, mais qu’elle s’interrompe suffisamment tôt sur la dernière afin de laisser de la place pour le pied de la dernière page.
Principe
Pour répondre à ce besoin, il est nécessaire d’intervenir sur 2 éléments :
- Conditionner le pied de document pour qu’il apparaisse uniquement sur la dernière page. Pour cela, la condition à utiliser est « Saut de page » avec la logique not(1). En effet, cette condition devient vraie pour le reste de la page dès qu’un groupe paginé déclenche un saut de page. Pour que cette condition soit pertinente elle doit donc être évaluée après le traitement du groupe correspondant à la liste paginée. Le pied de document doit être confectionné exclusivement avec des objets de type « groupe » ou « texte », car ce sont les seuls à pouvoir être exécutés après un objet de type « groupe ».
- Intégrer artificiellement le pied de document à la fin de la liste afin que cette dernière puisse en tenir compte pour le déclenchement des sauts de page Il est essentiel de s’assurer que le pied de document dispose de suffisamment d’espace sur la dernière page. Le groupe correspondant à la liste paginée doit donc vérifier que cet espace est disponible. Si ce n'est pas le cas, un saut de page doit être déclenché avant l'écriture du pied de document. Pour ce faire, une ligne spécifique (artificielle) doit être ajoutée à la fin du groupe principal. Cette ligne servira à réserver un espace dont la hauteur sera au minimum équivalente à celle du pied de document.
Exemple
Réservation d'espace pour le pied de document
L'idée est d'utiliser le groupe suivant comme pied de document. Dans notre exemple, le XML comporte une ligne spéciale en fin de groupe principal nommée RESA_SPACE. On lui applique une zone ayant pour espacement avant 3cm. (cela permet de réserver la place du pied de document)
<group name="Products"> <line >….</line> <line >….</line> <line >….</line> (...) <line name=”RESA_SPACE/> </group>
On conditionne la zone RESA_SPACE sur la présence du type de ligne "RESA_SPACE"
Gestion de l'apparition du pied de document
Dans notre cas, le pied de document est composé 2 tableaux (ventilation de TVA et tableau des totaux)
Celui-ci comporte tous les éléments nécessitant au design du tableau de ventilation de TVA d'un document. Celui-ci doit être présent uniquement sur la dernière page du document.
Le groupe doit être condition sur le non déclenchement d'un saut de page :