Dans cette section : |
Les données de rapport sont encadrées par les en-têtes, les pieds de page, et les titres. Ceci fournit le contexte pour les données. Vous pouvez identifier et formater de nombreux catégories d'en-têtes, pieds de page et titres dans un rapport, y compris :
Comment : |
Vous pouvez, dans une feuille de style désigner les titres de colonne et les valeurs de tri horizontal (ACROSS) du rapport pour le formatage. L'exemple suivant illustre où figurent les titres de colonne et les valeurs de tri horizontal dans le rapport, et indique quelles valeurs pour l'attribut TYPE vous pouvez utiliser pour identifier ces composants.
TABLE FILE EMPLOYEE SUM GROSS AND DED_AMT ACROSS DEPARTMENT BY PAY_DATE END
Remarque : la requête de rapport présentée ci-dessus ne sert qu'à illustrer où figurent les titres de colonne et les valeurs de tri horizontal dans le rapport ; la feuille de style en a été omise.
TYPE=TITLE, [COLUMN=column]
où :
sert à spécifier un ou plusieurs titres de colonne. Si vous omettez cet attribut et cette valeur, le formatage s'applique à tous les titres de colonne du rapport.
spécifie la colonne dont vous souhaitez formater le titre. Pour obtenir la liste des valeurs de colonne, consultez Désigner une colonne.
TYPE={ACROSSTITLE|ACROSSVALUE}, [ACROSS=column]
où :
Spécifie un titre de tri horizontal (ACROSS) .
spécifie une valeur de tri horizontal (ACROSS).
Les valeurs de tri horizontal ne sont pas en principe des titres, mais elles servent souvent de titres qui classent les titres de colonne s'affichant en-dessous.
spécifie les titres ou valeurs d'un critère de tri horizontal en particulier. Si vous omettez cet attribut et cette valeur, le formatage s'applique à tous les titres ou valeurs de tous les critères de tri horizontal de tous les rapports.
spécifie le critère de tri horizontal (ACROSS) dont vous souhaitez formater le titre ou la valeur. Pour obtenir la liste des valeurs que vous pouvez assigner à cet attribut, consultez Désigner une ligne de données de tri horizontal (ACROSS).
L'exemple de requête de rapport suivant illustre comment désigner des titres de tri vertical, des titres de tri horizontal et des valeurs de tri pour l'application d'un style. Les titres de tri vertical (TYPE=TITLE) sont Manufacturing Plant, Quantity Sold et Product Cost, le titre de tri horizontal (TYPE=ACROSSTITLE) est Year, et les valeurs de tri (TYPE=ACROSSVALUE) sont 2001, 2002 et TOTAL.
L'exemple démontre également comment assigner des valeurs de zoom en profondeur aux valeurs ACROSS individuelles (2001 et 2002) et non pas à la valeur ROW-TOTAL (TOTAL). La syntaxe de feuille de style pertinente s'affiche en caractères gras dans la requête.
TABLE FILE CENTORD
SUM QUANTITY AS 'Quantity,Sold' LINE_COGS/I9 AS 'Product,Cost'
BY PLANT
ACROSS YEAR
WHERE YEAR EQ '2001' OR '2002'
HEADING
"Plant Production Cost Analysis"
ON TABLE ROW-TOTAL AS 'TOTAL'
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF,$
TYPE=TITLE, STYLE=BOLD, $
TYPE=ACROSSTITLE, STYLE=BOLD, $
TYPE=ACROSSVALUE, STYLE=BOLD+ITALIC, COLOR=BLUE, FOCEXEC=DETAILS, $
TYPE=ACROSSVALUE, COLUMN=N4, STYLE=BOLD, COLOR=RED, $
TYPE=ACROSSVALUE, COLUMN=ROWTOTAL(1), COLOR='BLACK',FOCEXEC=NONE, $
ENDSTYLE
END
La sortie est :
TYPE=FREETEXT, LABEL={Rn|label}
où :
est une étiquette de ligne implicite. Pour déterminer la valeur de n, comptez le nombre de lignes jusqu'à et y compris la ligne désirée.
Est une étiquette de ligne explicite.
L'exemple de requête de rapport suivant illustre comment désigner le texte libre dans un rapport FML pour l'application d'un style. Dans cet exemple, les lignes "CASH ACCOUNTS" et "OTHER CURRENT ASSETS" constituent le texte libre. La syntaxe de feuille de style pertinente s'affiche en caractères gras dans la requête.
TABLE FILE LEDGER
SUM AMOUNT FOR ACCOUNT
" --- CASH ACCOUNTS ---" LABEL CA OVER
1010 AS 'CASH ON HAND' OVER
1020 AS 'DEMAND DEPOSITS' OVER
1030 AS 'TIME DEPOSITS' OVER
" " OVER
" --- OTHER CURRENT ASSETS ---" LABEL OCA OVER
1100 AS 'ACCOUNTS RECEIVABLE' OVER
1200 AS 'INVENTORY'
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=FREETEXT, LABEL=CA, STYLE=BOLD, SIZE=12, $
TYPE=FREETEXT, LABEL=OCA, STYLE=BOLD, SIZE=12, $
ENDSTYLE
END
La sortie est :
Une feuille de style vous permet d'identifier les en-têtes et pieds de page d'un rapport, ainsi que les lignes individuelles, chaînes de texte et champs qui les composent, afin de les formater.
Une requête TABLE peut avoir plusieurs en-têtes ou pieds de page. Pour chaque en-tête ou pied de page, une clause WHEN contre les données récupérées peut déterminer ce que l'en-tête ou le pied de page affiche dans la sortie de rapport. L'attribut feuille de style CONDITION vous permet d'identifier une clause WHEN spécifique pour que vous définissiez séparément le style de chaque en-tête ou pied de page.
L'exemple suivant montre les parties du rapport qui correspondent au composants TABHEADING (en-tête de rapport), HEADING (en-tête), SUBHEAD (en-tête de tri), SUBFOOT (pied de page de tri) et TABFOOTING (pied de page de rapport). Il indique également quelles valeurs pour l'attribut TYPE vous pouvez utiliser pour désigner ces composants dans la syntaxe de feuille de style.
TABLE FILE EMPLOYEE PRINT CURR_SAL HIRE_DATE BY LAST_NAME BY FIRST_NAME ON TABLE SUBHEAD "CONFIDENTIAL INFORMATION" "SWIFTY INFORMATION GROUP - EMPLOYEE LIST BY DEPARTMENT" HEADING CENTER "</1>EMPLOYEE LIST FOR DEPARTMENT: <DEPARTMENT" ON LAST_NAME SUBHEAD "ID: <EMP_ID" ON LAST_NAME SUBFOOT "** REVIEW SALARY FOR <FIRST_NAME <LAST_NAME" FOOTING "CONFIDENTIAL INFORMATION" ON TABLE SUBFOOT "</1>***END OF REPORT***" ON TABLE SET ONLINE-FMT STANDARD END
La sortie est :
Remarque : la requête de rapport présentée ci-dessus ne sert qu'à illustrer où figurent différents types d'en-têtes et de pieds de page dans le rapport ; la feuille de style en a été omise
TYPE=headfoot, [BY=sortcolumn]
où :
Désigne un en-tête ou un pied de page. Vous pouvez choisir :
Lorsqu'un rapport contient plusieurs en-têtes de tri ou pieds de page de tri, dont chacune est associée à une différente colonne de tri vertical (BY), la commande BY vous permet d'identifier laquelle des en-têtes ou des pieds de page de tri vous souhaitez formater.
Si plusieurs en-têtes de tri ou pieds de page de tri sont associés à différentes colonnes de tri vertical (BY), et que vous omettez cet attribut et cette valeur, le formatage s'applique à tous les en-têtes et pieds de page de tri.
spécifie la colonne de tri vertical (BY) associée à l'un des en-têtes ou des pieds de page de tri du rapport.
L'exemple de requête de rapport suivant illustre comment désigner un en-tête de page (qui s'affiche en haut de chaque page de rapport) et un pied de page de rapport (qui s'affiche uniquement sur la dernière page du rapport) pour l'application d'un style. Les déclarations de feuille de style pertinentes sont mises en surbrillance dans la requête.
TABLE FILE CENTORD
HEADING
"Sales Quantity and Amount by Plant"
SUM QUANTITY LINEPRICE
BY PLANT
ON TABLE SUBFOOT
" "
"***End of Report***"
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=HEADING, FONT=TIMES, SIZE=12, STYLE=BOLD,$
TYPE=TABFOOTING, JUSTIFY=CENTER, STYLE=BOLD, SIZE=11,$
ENDSTYLE
END
La sortie est :
TYPE=type, LINE=line_#
où :
désigne un type particulier d'en-tête ou de pied de page. Vous pouvez sélectionner parmi HEADING, FOOTING, TABHEADING, TABFOOTING, SUBHEAD ou SUBFOOT. Pour plus de détails, consultez Désigner un en-tête ou un pied de page.
désigne une ligne selon sa position dans l'en-tête ou le pied de page.
L'exemple de requête de rapport suivant illustre comment désigner des lignes individuelles dans un en-tête pour l'application d'un style. La ligne d'en-tête 1 (Sales Quantity Analysis) est formatée de sorte à s'afficher en caractères gras, corps 11. La ligne d'en-tête 2 (**Confidential**) est formatée de sorte à s'afficher en caractères rouges. Les déclarations de feuille de style pertinentes sont mises en surbrillance dans la requête.
TABLE FILE CENTORD
HEADING
"Sales Quantity Analysis"
"**Confidential**"
" "
SUM QUANTITY
ACROSS YEAR
BY PLANT
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=HEADING, LINE=1, SIZE=11, STYLE=BOLD,$
TYPE=HEADING, LINE=2, COLOR=RED, STYLE=BOLD,$
TYPE=HEADING, JUSTIFY=CENTER,$
ENDSTYLE
END
La sortie est :
TYPE=type, [LINE=line_#], [OBJECT=TEXT], ITEM=item_#
où :
désigne un type particulier d'en-tête ou de pied de page. Vous pouvez sélectionner parmi HEADING, FOOTING, TABHEADING, TABFOOTING, SUBHEAD ou SUBFOOT. Pour plus de détails, consultez Désigner un en-tête ou un pied de page .
désigne une ligne selon sa position dans l'en-tête ou le pied de page. Il n'est nécessaire d'inclure l'attribut LINE que si l'en-tête ou le pied de page est multi-lignes.
formate uniquement les chaînes de texte et les variables Dialogue Manager (également appelées &variables). Il n'est nécessaire d'inclure OBJECT=TEXT dans la syntaxe de feuille de style que si vous formatez des chaînes de texte et des champs incorporés dans le même en-tête ou pied de page.
désigne une ligne selon sa position dans l'en-tête ou le pied de page.
Si vous souhaitez formater plusieurs parties d'une chaîne de texte qui s'affiche sur une seule ligne, vous pouvez utiliser des signes de localisation pour diviser l'en-tête ou le pied de page en parties multiples. Il suffit de positionner le signe de localisation après la chaîne de texte que vous souhaitez désigner. Le signe de localisation <+0> n'ajoute pas d'espaces supplémentaires à votre en-tête ou pied de page. Lors de l'utilisation de signes de localisation, le texte se divise de la façon suivante :
Pour voir un exemple, consultez Désignation d'une chaîne de texte dans un en-tête à l'aide de signes de localisation.
Remarque : lorsqu'une balise de fin est suivie immédiatement par une balise de début (><), un élément de texte est placé entre les deux signes de localisation (> <). Veuillez prendre cela en considération lors du formatage.
La valeur de position varie aussi selon que vous utilisez l'attribut OBJECT ou non. Si vous utilisez :
L'exemple de requête de rapport suivant illustre comment appliquer différents styles à des chaînes de texte dans un en-tête à l'aide de signes de localisation. Les signes de localisation utilisés dans cet exemple sont <+0>, car ils n'ajoutent pas d'espaces. Les déclarations de feuille de style pertinentes sont mises en surbrillance dans la requête.
TABLE FILE CENTORD
HEADING
"Third Quarter,<+0>2002:<+0> Sales Quantity Analysis"
SUM QUANTITY BY PLANT
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=HEADING, OBJECT=TEXT, ITEM=1, STYLE=BOLD+UNDERLINE, SIZE=12, $
TYPE=HEADING, OBJECT=TEXT, ITEM=2, COLOR=BLUE, SIZE=12,
STYLE=BOLD+UNDERLINE, $
TYPE=HEADING, OBJECT=TEXT, ITEM=3, STYLE=ITALIC,$
ENDSTYLE
END
La sortie est :
TYPE=type, [LINE=line_#], OBJECT=FIELD, [ITEM=item #]
où :
désigne un type particulier d'en-tête ou de pied de page. Vous pouvez sélectionner parmi HEADING, FOOTING, TABHEADING, TABFOOTING, SUBHEAD ou SUBFOOT. Pour plus de détails, consultez Désigner un en-tête ou un pied de page .
désigne une ligne selon sa position dans l'en-tête ou le pied de page. Il n'est nécessaire d'inclure l'attribut LINE que si l'en-tête ou le pied de page est multi-lignes.
désigne une ligne selon sa position dans l'en-tête ou le pied de page.
Si un en-tête ou un pied de page contient plusieurs champs incorporés, vous devez spécifier le champ à formater en fournissant son numéro d'élément. Vous devez compter les éléments de gauche à droite ; n'incluez pas de champs de texte. Vous ne devez pas inclure de champs texte dans le compte. Il n'est pas nécessaire de spécifier le numéro d'élément si l'en-tête ou le pied de page ne contient qu'un seul champ incorporé.
Remarque : les options BORDER ne sont pas prises en charge avec les éléments spécifiques dans un HEADING, FOOTING, SUBHEAD, SUBFOOT.
L'exemple de requête de rapport suivant illustre comment désigner un champ incorporé dans un en-tête pour l'application d'un style. Notez que le numéro d'élément n'est pas spécifié dans la déclaration de feuille de style car il n'y a qu'un seul champ incorporé dans l'en-tête. La déclaration de feuille de style pertinente est mise en surbrillance dans la requête.
TABLE FILE CENTORD
HEADING
"Sales For <YEAR By Plant"
SUM QUANTITY BY PLANT
WHERE YEAR EQ 2000
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=HEADING, OBJECT=TEXT, COLOR=BLUE,$
TYPE=HEADING, OBJECT=FIELD, COLOR=RED, STYLE=BOLD,$
ENDSTYLE
END
La sortie est :
TYPE = {HEADING|FOOTING}, CONDITION = n, ... ,$
où :
est le nombre de conditions WHEN dans l'en-tête ou le pied de page de haut en bas. A défaut de spécification, le formatage s'applique à tous les en-têtes et pieds de page.
La requête suivante affiche une page pour chaque employé avec ses informations de salaire et de code de travail. La première condition WHEN s'applique si l'employé est du sexe féminin. La deuxième condition WHEN s'applique si l'employé est du sexe masculin. La troisième condition WHEN s'applique si le service est MIS. La quatrième condition WHEN s'applique si le service est PRODUCTION. Les déclarations de feuille de style comprennent des éléments de style pour la deuxième et troisième condition :
DEFINE FILE EMPLOYEE GENDER/A1 = DECODE FIRST_NAME(ALFRED 'M' RICHARD 'M' JOHN 'M' ANTHONY 'M' ROGER 'M' MARY 'F' DIANE 'F' JOAN 'F' ROSEMARIE 'F' BARBARA 'F'); MIXEDNAME/A15 = LCWORD(15, LAST_NAME, MIXEDNAME); NAME/A16 = MIXEDNAME||','; END TABLE FILE EMPLOYEE PRINT LAST_NAME NOPRINT GENDER NOPRINT NAME NOPRINT HEADING "Dear Ms. <NAME" WHEN GENDER EQ 'F'; HEADING "Dear Mr. <NAME>" WHEN GENDER EQ 'M'; HEADING " " HEADING "This is to inform you that your current salary is " "<CURR_SAL and <CURR_JOBCODE>is your job code." " " "Sincerely," HEADING "Barbara Cross " WHEN DEPARTMENT EQ 'MIS'; HEADING "John Banning " WHEN DEPARTMENT EQ 'PRODUCTION' ; WHERE LAST_NAME NE 'BANNING' OR 'CROSS' BY EMP_ID NOPRINT PAGE-BREAK ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=HEADING, CONDITION=2, STYLE=ITALIC,$ TYPE=HEADING, CONDITION=3, STYLE=BOLD,$ ENDSTYLE END
Dans la feuille de style pour la requête, les lignes d'en-tête affichées à cause de la première condition sont en italiques et les lignes d'en-tête affichées à cause de la troisième condition sont en gras.
La première page da la sortie est pour un employé du sexe masculin, donc la ligne de salutation est en italique :
La deuxième page de la sortie est pour un employé dans le service MIS, donc la ligne signature est en caractères gras :
WebFOCUS |