Kopf- und Fußzeilen in Panels in PDF-Reportausgabe wiederholen

Vorgehensweise:

Wenn die Spalten, die in PDF-Reports dargestellt werden, nicht auf nur einer Seite angezeigt werden können, werden die Seiten automatisch zu Panels. Bei Panels werden nachfolgende Spalten für dieselbe Seite auf Überlaufseiten platziert. Diese Überlaufseiten werden erzeugt, bis die gesamte Breite des Reports dargestellt wurde, wonach die nächste vertikale Seite erzeugt wird mit einer neuen Seitenzahl und ihren zugehörig horizontalen Panels.

Um Panels, die auf das erste Panel folgen, besser lesbar zu machen, können Sie angeben, dass Kopfzeilenelemente vom ersten Panel auf jedem nachfolgenden Panel wiederholt werden sollen, indem Sie das StyleSheet-Attribut HEADPANEL=ON verwenden.

Wenn Panels erstellt werden und Default-Seitennummerierung verwendet wird, enthält die angezeigte Seitenzahl sowohl die Seiten- als auch die Panelzahl (z. B. 1.1, 1.2, 1.3). Wenn Sie HEADPANEL aktivieren, wird auch die Panel-Bezeichnung in TABPAGENO aufgenommen.

HEADPANEL kann für den gesamten Report angegeben werden, wodurch alle Kopf- und Fußzeilen auf den Seiten der Panels repliziert werden. Es kann auch aktiviert werden für individuelle Kopfzeilen, Fußzeilen, Zwischenkopfzeilen oder Zwischenfußzeilen.

HEADPANEL führt dazu, dass Ränder von der ursprünglichen Seite auf den Seiten der Panels repliziert werden. Sie können die Ränder von Zwischenkopfzeilen und Zwischenfußzeilen zusätzlich kontrollieren, indem Sie ALIGN-BORDERS verwenden, was die Bezeichnung ermöglicht, dass Unterelementränder mit dem Hauptteil der Daten ausgerichtet werden sollen, und nicht mit den Seiten- oder Reportkopfzeilen. Weitere Informationen dazu, wie Sie ALIGN-BORDERS mit HEADPANEL verwenden, finden Sie unter Zwischenkopfzeilen- und Zwischenfußzeilenränder mit dem Reporttext ausrichten.


Nach oben

x
Syntax: Kopfzeilenelemente in Panels wiederholen
TYPE={REPORT|headfoot [BY=sortcolumn]}, HEADPANEL={ON|OFF}, $

Hierbei gilt:

REPORT
Wiederholt alle Reportkopfzeilen, Reportfußzeilen, Seitenkopfzeilen, Seitenfußzeilen, Zwischenkopfzeilen und Zwischenfußzeilen.
headfoot
Identifiziert eine Kopf- oder Fußzeile. Wählen Sie aus den folgenden Optionen aus:

TABHEADING ist eine Reportkopfzeile. Sie wird am Anfang des Reports einmal angezeigt und durch ON TABLE SUBHEAD erzeugt.

TABFOOTING ist eine Reportfußzeile. Sie wird am Ende des Reports einmal angezeigt und durch ON TABLE SUBFOOT erzeugt.

HEADING ist eine Seitenkopfzeile. Sie wird am Anfang jeder Reportseite angezeigt und durch HEADING erzeugt.

FOOTING ist eine Seitenfußzeile. Sie wird am Ende jeder Reportseite angezeigt und durch FOOTING erzeugt.

SUBHEAD ist eine Sortierkopfzeile. Sie wird am Anfang einer vertikalen Sortiergruppe (BY) (erzeugt durch ON sortfield SUBHEAD) angezeigt.

SUBFOOT ist eine Sortierfußzeile. Sie wird am Ende einer vertikalen Sortiergruppe (BY) (erzeugt durch ON sortfield SUBFOOT) angezeigt.

BY
Wenn es mehrere Sortierkopfzeilen und Sortierfußzeilen gibt, die jeweils mit einer anderen vertikalen Sortierspalte (BY) assoziiert sind, ermöglicht dies Ihnen herauszufinden, welches Sortierfußzeile Sie formatieren möchten.

Wenn es mehrere Sortierkopfzeilen oder Sortierfußzeilen gibt, die mit verschiedenen vertikalen Sortierspalten (BY) assoziiert sind und Sie dieses Attribut mit Wert weglassen, wird die Formatierung auf alle Sortierkopfzeilen und -fußzeilen angewendet.

sortcolumn
Gibt die vertikale Sortierspalte (BY) an, die mit einer der Reportsortierkopfzeilen oder -fußzeilen assoziiert ist.
ON
Wiederholt die angegebenen Kopf- oder Fußzeilenelemente in jedem Panel.
OFF
Zeigt Kopf- oder Fußzeilenelemente nur im ersten Panel an. OFF ist der Defaultwert.

Beachten Sie, dass das Attribut HEADPANEL=ON nur auf die gesamte Kopf- oder Fußzeile angewendet werden kann, und nicht auf individuelle Zeilen oder Elemente in der Kopf- oder Fußzeile.



Beispiel: Alle Kopf- und Fußzeilen in Reportpanels wiederholen

Die folgende Anfrage mit der Datenquelle GGSALES summiert Absatz in Stückzahlen, eingeplanter Absatz in Stückzahlen, Dollarumsatz und eingeplanter Absatz nach Region, Staat, Stadt, Kategorie und Produkt. Der Report hat eine Seitenkopfzeile und für jede Region eine Zwischenfußzeile.

TABLE FILE GGSALES
HEADING
"PRODUCT SALES REPORT"
""
"Page<TABPAGENO"
""
SUM UNITS BUDUNITS DOLLARS BUDDOLLARS
BY REGION NOPRINT
BY ST BY CATEGORY BY PRODUCT
ON REGION SUBFOOT
" "
" SUBFOOT FOR REGION <REGION "
" SUBTOTAL BUDDOLLARS: <ST.BUDDOLLARS SUBTOTAL DOLLARS: <ST.DOLLARS "
" "
ON TABLE SET BYPANEL ON
ON TABLE SET PAGE ON
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE = REPORT, HEADPANEL=OFF,$
ENDSTYLE
END

Die Anfrage stellt BYPANEL ON ein, so dass jedes Panel die Sortierfeldwerte anzeigt. Da jedoch HEADPANEL=OFF für den gesamten Report gilt, enthält das erste Panel für die Seite 1 die Kopfzeile und die Zwischenfußzeile, das zweite Panel jedoch nicht.

Die Ausgabe für Seite 1 Panel 1 enthält die Kopfzeile und die Zwischenfußzeile, wie es in der folgenden Abbildung zu sehen ist. Beachten Sie, dass für TABPAGENO mit HEADPANEL=OFF die Panel-Zahl nicht enthalten ist.

Die Ausgabe für Seite 1 Panel 2 enthält die Kopfzeile oder Zwischenfußzeile nicht, wie es in der folgenden Abbildung zu sehen ist.

Die folgende Ausgabe zeigt die Panels 1 und 2, wenn die StyleSheet-Deklaration so geändert wird, dass HEADPANEL=ON für den gesamten Report eingestellt wird (TYPE=REPORT, HEADPANEL=ON ,$). Die Kopfzeile und Zwischenfußzeile werden auf jedem Panel wiederholt. Mit HEADPANEL=ON nimmt TABPAGENO die Panel-Zahl auf.



Beispiel: Eine Zwischenfußzeile auf Panels in PDF-Reportausgabe wiederholen

Die folgende Anfrage mit der Datenquelle GGSALES gibt das Attribut HEADPANEL=ON nur für die Zwischenfußzeile und nicht für den gesamten Report an. Beachten Sie, dass diese Anfrage die Default-Seitennummerierung verwendet (ON TABLE SET PAGE ON), und nicht TABPAGENO, um die Seitenzahlen auf jeder Seite anzuzeigen.

TABLE FILE GGSALES
HEADING
" PRODUCT SALES REPORT" 
" "
SUM UNITS BUDUNITS DOLLARS BUDDOLLARS
BY REGION NOPRINT
BY ST BY CITY  BY CATEGORY BY PRODUCT 
ON REGION SUBFOOT
" "
" SUBFOOT FOR REGION <REGION "
" SUBTOTAL BUDDOLLARS: <ST.BUDDOLLARS SUBTOTAL DOLLARS:  <ST.DOLLARS "
" "
ON TABLE SET BYPANEL ON
ON TABLE SET PAGE ON
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
TYPE = SUBFOOT, HEADPANEL=ON,$
 
ENDSTYLE
END

Panel 1 zeigt sowohl die Kopfzeile als auch die Zwischenfußzeile an, wie es in der folgenden Abbildung zu sehen ist.

Panel 2 zeigt nur die Zwischenfußzeile und nicht die Kopfzeile an, wie es in der folgenden Abbildung zu sehen ist.

Da die Seitenkopfzeile nicht wiederholt wird, wird, wenn Sie die Systemvariable <TABPAGENO verwenden, um die Seitenzahl in die Kopfzeile zu platzieren, die Panel-Zahl nicht angezeigt und auf dem zweiten Panel die Seitenzahl nicht angezeigt.

TABLE FILE GGSALES
HEADING
" PRODUCT SALES REPORT PAGE <TABPAGENO" 
" "
SUM UNITS BUDUNITS DOLLARS BUDDOLLARS
BY REGION NOPRINT
BY ST BY CITY  BY CATEGORY BY PRODUCT 
ON REGION SUBFOOT
" "
" SUBFOOT FOR REGION <REGION "
" SUBTOTAL BUDDOLLARS: <ST.BUDDOLLARS SUBTOTAL DOLLARS:  <ST.DOLLARS "
" "
ON TABLE SET BYPANEL ON
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE = SUBFOOT, HEADPANEL=ON,$
 
ENDSTYLE
END

Das erste Panel zeigt die Seitenzahl in der Kopfzeile an, ohne die Panelzahl, wie es in der folgenden Abbildung zu sehen ist.

Im zweiten Panel wird die Kopfzeile nicht angezeigt und daher die eingebettete Seitenzahl nicht angezeigt, wie es in der folgenden Abbildung zu sehen ist.



Beispiel: Kopf- und Fußzeilen mit Styling auf Seiten mit Panels wiederholen

Die folgende Anfrage mit der Datenquelle GGSALES enthält eine Reportkopfzeile, eine Seitenkopfzeile mit einem Bild, eine Fußzeile, eine Zwischenkopfzeile, eine Zwischenfußzeile und eine Zwischensumme.

SET BYPANEL=ON
DEFINE FILE GGSALES
SHOWCATPROD/A30 = CATEGORY || ' / ' || PRODUCT;
END
TABLE FILE GGSALES
SUM 
     DOLLARS/I8M AS ''
BY REGION
BY ST
BY CITY
ACROSS SHOWCATPROD AS 'Product Sales'
     
ON REGION SUBHEAD
" "
"Subheading Region <REGION"
" "
ON REGION SUBTOTAL AS '*TOTAL'
ON REGION SUBFOOT WITHIN 
" "
"Subfooting Region <REGION"
" "
ON TABLE SUBHEAD
"Report Heading"
HEADING
"Page <TABPAGENO  "
" "
" "
" "
FOOTING
" "
"PAGE FOOTING "
ON TABLE SUBFOOT
" "
"Report Footing"
ON TABLE SET PAGE-NUM OFF 
-*ON TABLE NOTOTAL
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
     UNITS=IN,
     SQUEEZE=ON,
     ORIENTATION=PORTRAIT,
$
TYPE=REPORT,
     FONT='ARIAL',
     SIZE=9,
     HEADPANEL=ON,
     BORDER=ON,
$
TYPE=TITLE,
     STYLE=BOLD,
$
TYPE=TABHEADING,
     SIZE=20,
     STYLE=BOLD,
$
TYPE=TABFOOTING,
     SIZE=20,
     STYLE=BOLD,
$
TYPE=HEADING,
     SIZE=12,
     STYLE=BOLD,
$
TYPE=HEADING,
     LINE=1,
     JUSTIFY=RIGHT,
$
TYPE=HEADING,
     LINE=2,
     JUSTIFY=RIGHT,
$
TYPE=HEADING,
     LINE=3,
     JUSTIFY=RIGHT,
$
TYPE=HEADING,
     LINE=4,
     JUSTIFY=RIGHT,
$
TYPE=HEADING,
     LINE=5,
     JUSTIFY=RIGHT,
$
TYPE=HEADING,
     IMAGE=smplogo1.gif,
     POSITION=(+0.000000 +0.000000),
$
TYPE=FOOTING,
     SIZE=12,
     STYLE=BOLD,
     JUSTIFY=RIGHT,
$
TYPE=SUBHEAD,
     SIZE=10,
     STYLE=BOLD,
$
TYPE=SUBFOOT,
     SIZE=10,
     STYLE=BOLD,
$
TYPE=SUBTOTAL,
     BACKCOLOR=RGB(210 210 210),
$
TYPE=ACROSSVALUE,
     SIZE=9,
     WRAP=ON,
$
TYPE=ACROSSTITLE,
     STYLE=BOLD,
$
TYPE=GRANDTOTAL,
     BACKCOLOR=RGB(210 210 210),
     STYLE=BOLD,
$
ENDSTYLE
END

Da HEADPANEL=ON für den gesamten Report angegeben wurde, zeigen beide Panels alle Kopf- und Fußzeilenelementen an.

In der folgenden Abbildung sehen Sie die Seite 1 Panel 1.

In der folgenden Abbildung sehen Sie die Seite 1 Panel 2.


WebFOCUS