Alignement d'un élément d'en-tête ou de pied de page sur des colonnes dans un rapport HTML ou PDF

Comment :

Avec HEADALIGN=BODY, chaque élément d'en-tête ou de pied de page s'aligne sur une colonne de données dans un rapport HTML ou PDF. Avec HEADALIGN=INTERNAL, chaque élément est continué sur une colonne d'un tableau HTML créé et aligné spécialement pour l'en-tête ou le pied de page du rapport. Par défaut, tout élément d'en-tête ou de pied de page (ITEM) est mis dans la première colonne disponible. Cependant, en utilisant l'attribut COLSPAN vous pouvez positionner un élément afin qu'il s'étende sur des colonnes multiples. Pour plus de détails à propos des options HEADALIGN, consultez Aligner un élément d'en-tête ou de pied de page dans un rapport HTML, EXL07, EXL2K ou PDF..

Vous devez spécifier les attributs HEADALIGN et COLSPAN dans deux déclarations de feuille de style différentes, car HEADALIGN s'applique à un en-tête ou pied de page entier tandis que COLSPAN s'applique à un élément particulier dans un en-tête ou pied de page.

Cette fonctionnalité est supportée uniquement pour HTML. Le format d'affichage PDF ne supporte pas l'attribut COLSPAN.


Haut de page

x
Syntaxe : Aligner un élément d'en-tête ou de pied de page sur des colonnes dans un rapport HTML ou PDF
TYPE = headfoot, [subtype,] COLSPAN = n, $

où :

headfoot
Indique le type d'en-tête ou de pied de page. Les valeurs valables sont TABHEADING, TABFOOTING, HEADING, FOOTING, SUBHEAD et SUBFOOT
subtype
Sont des attributs supplémentaires qui identifient le composant de rapport. Ces options peuvent être utilisées individuellement ou conjointement, selon le degré de spécificité nécessaire pour identifier un élément. Voici les valeurs valables :

LINE, qui identifie une ligne selon sa position dans un en-tête ou pied de page. L'identification des lignes individuelles vous permet de formater chaque ligne différement.

Si un en-tête ou un pied de page contient des lignes multiples et que vous appliquez une déclaration de feuille de style qui ne spécifie pas LINE, la déclaration s'applique à toutes les lignes. Les lignes vierges sont comptées en interprétant la valeur de LINE.

OBJECT, qui identifie en élément dans un en-tête ou pied de page en tant que chaîne de texte ou valeur de champ. Les valeurs valables sont TEXT et FIELD. TEXT peut représenter du texte libre ou une variable esperluette (&) du Gestionnaire de dialogue.

Il n'est pas nécessaire de spécifier OBJECT=TEXT à moins que vous stylisiez des chaînes de texte et des champs intégrés dans un même en-tête ou pied de page.

ITEM, qui identifie un élément en fonction de sa position sur une ligne. Pour diviser une ligne d'en-tête ou de pied de page en éléments, vous pouvez utiliser le signe de localisation <+0>. Consultez Désignation de composants de rapport dans la syntaxe de feuille de style WebFOCUS.

Pour déterminer l'élément (ITEM) pour un objet (OBJECT), suivez ces directives :

  • En utilisant OBJECT=TEXT, comptez uniquement les chaînes de texte de gauche à droite.
  • En utilisant OBJECT=FIELD, comptez uniquement les valeurs de gauche à droite.
  • En ne pas utilisant OBJECT, comptez les chaînes de texte et les valeurs de champ de gauche à droite.

Si vous appliquez une déclaration de feuille de style précisant ITEM, le nombre est compté du début de chaque ligne de l'en-tête ou du pied de page et pas seulement du début de la première ligne.

COLSPAN
est un attribut qui aligne un élément avec la largeur d'espace où s'étendent des colonnes multiples.
n
Est la colonne avec laquelle l'élément spécifié s'aligne.


Exemple : Centrage d'un en-tête à travers trois colonnes

Dans cette requête, HEADALIGN=INTERNAL crée un tableau HTML intégré dans trois colonnes pour l'en-tête. Ensuite, l'attribut COLSPAN centre la première ligne de l'en-tête, Gotham Grinds, Inc., au-dessus du rapport, s'étendant sur les trois colonnes dans le tableau HTML intégré.

TABLE FILE GGORDER
HEADING
"Gotham Grinds, Inc."
" "
"Orders Report <+0> <+0> Run on: &DATE"
" "
PRINT ORDER_NUMBER ORDER_DATE STORE_CODE QUANTITY
BY PRODUCT_CODE BY PRODUCT_DESCRIPTION
IF RECORDLIMIT EQ 10
ON TABLE SET PAGE-NUM OFF
ON TABLE SET ONLINE-FMT HTML
ON TABLE SET STYLESHEET *
TYPE = REPORT, GRID = OFF, $
TYPE = HEADING, HEADALIGN = INTERNAL, $ 
TYPE = HEADING, LINE=1, COLSPAN=3, STYLE = BOLD, JUSTIFY=CENTER, $ 
TYPE = HEADING, LINE=3, ITEM=3, JUSTIFY=RIGHT, $
ENDSTYLE
END

La sortie est :



Exemple : Alignement d'une valeur de champ sur des colonnes multiples

Dans cette requête, HEADALIGN=BODY aligne le pied de page de tri dans le même tableau HTML que le corps du rapport. COLSPAN = 5 positionne le premier élément dans le pied de page de tri (le texte Total) dans la cinquième colonne du tableau HTML. Le deuxième élément du pied de page de tri (le champ <ST.QUANTITY) est positionné dans la prochaine colonne disponible.

L'attribut HEADALIGN est sur une autre ligne que l'attribut COLSPAN car HEADALIGN s'applique au pied de page de tri en entier (et par conséquent, aux deux éléments), tandis que COLSPAN s'applique à l'élément seul Total.

TABLE FILE GGORDER
PRINT ORDER_NUMBER ORDER_DATE STORE_CODE QUANTITY
BY PRODUCT_CODE BY PRODUCT_DESCRIPTION
WHERE ORDER_DATE EQ '01/01/96'
WHERE STORE_CODE EQ 'R1019' 
ON PRODUCT_CODE SUBFOOT
"Total: <ST.QUANTITY" 
ON TABLE SET PAGE-NUM OFF
ON TABLE SET ONLINE-FMT HTML
ON TABLE SET STYLESHEET *
TYPE = REPORT, GRID = OFF, $ 
TYPE = SUBFOOT, HEADALIGN = BODY, JUSTIFY = RIGHT, STYLE = BOLD, $
TYPE = SUBFOOT, OBJECT = TEXT, COLSPAN = 5, $ 
ENDSTYLE
END

La sortie partielle est :



Exemple : Aligner la valeur de champ sur des colonnes multiples dans un rapport PDF

Dans cette requête, HEADALIGN=BODY aligne le pied de page de tri dans la même grille que le corps du rapport. COLSPAN = 5 positionne le premier élément du pied de page de tri (le texte Total) dans la cinquième colonne de la sortie de rapport. Le deuxième élément du pied de page de tri (le champ <ST.QUANTITY) est positionné dans la prochaine colonne disponible. Les éléments de pied de page secondaire sont alignés à droite.

L'attribut HEADALIGN se trouve sur une autre ligne que l'attribut COLSPAN car HEADALIGN s'applique au pied de page de tri en entier (et par conséquent, aux deux éléments), tandis que COLSPAN ne s'applique qu'à l'élément Total.

TABLE FILE GGORDER
PRINT ORDER_NUMBER ORDER_DATE STORE_CODE QUANTITY
BY PRODUCT_CODE BY PRODUCT_DESCRIPTION
WHERE ORDER_DATE EQ '01/01/96'
WHERE STORE_CODE EQ 'R1019'
ON PRODUCT_CODE SUBFOOT
"Total:<ST.QUANTITY"
""
ON TABLE SET PAGE-NUM OFF
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLESHEET *
TYPE=REPORT, FONT=ARIAL, SQUEEZE=ON,$ 
TYPE = SUBFOOT, HEADALIGN = BODY, JUSTIFY = RIGHT, STYLE = BOLD, $
TYPE = SUBFOOT, ITEM=1, COLSPAN = 5, $
ENDSTYLE
END

La sortie affiche que le premier élément du pied de page de tri (le texte Total) est dans la cinquième colonne de la sortie de rapport. Le deuxième élément du pied de page de tri (le champ <ST.QUANTITY) est positionné dans la prochaine colonne disponible.


WebFOCUS