Kopfzeilen, Fußzeilen oder Elemente darin ausrichten

In diesem Abschnitt:

Vorgehensweise:

Für einen PDF-, PS- oder HTML-Report können Sie das Attribut POSITION in einem StyleSheet verwenden, um die Anfangsposition für eine Kopf- oder Fußzeile festzulegen, wobei diese in einer Messgröße angegeben wird. Für HTML wird hierfür ein internes Cascading StyleSheet benötigt. Details über das Auwählen einer Ausrichtungsmethoden finden Sie in Eine Ausrichtungsmethode für Kopf- und Fußzeilenelemente auswählen.

Sie können das Attribut POSITION auch für einen PDF- oder PS-Report verwenden, um eine absolute oder relative Startposition für ein Element innerhalb einer Kopf- oder Fußzeile zu spezifizieren oder um ein Element in einer Kopf- oder Fußzeile mit einer Reportspalte auszurichten. Eine absolute Anfangsposition ist der Abstand zum linken Rand des Reports. Eine relative Anfangsposition ist der Abstand zum vorhergehenden Objekt. Für das erste Element in einer Kopfzeile ist dies der linke Rand des Reports.

In einem HTML-Report können Sie die darauf bezogene Syntax und ein internes Cascading Style Sheet verwenden, um ein Bild in einer Kopf- oder Fußzeile zu positionieren. Details über Bilder finden Sie in Die Reportseite layouten.


Nach oben

x
Syntax: Eine Anfangsposition für eine Kopf- oder Fußzeile einstellen

Verwenden Sie die folgende Syntax, um die Anfangsposition für eine gesamte Kopf- oder Fußzeile in Bezug auf den linken Rand eines Reports zu positionieren.

TYPE = headfoot, POSITION = position, $

Hierbei gilt:

headfoot
Ist der Kopf- bzw. Fußzeilentyp. TABHEADING, TABFOOTING, HEADING, FOOTING, SUBHEAD und SUBFOOT sind gültige Werte.
position
Ist der gewünschte Abstand von links, der durch das Attribut UNITS (der Default ist INCHES) bestimmt wird.

Hinweis: In einem HTML-Report muss diese Syntax in Verbindung mit einem internen Cascading StyleSheet verwendet werden. Eine Abbildung finden Sie unter Eine Anfangsposition für eine Reportkopfzeile in HTML einstellen.



Beispiel: Eine Anfangsposition für eine Reportkopfzeile in PDF einstellen

Diese Anfrage positioniert die Reportkopfzeile 1,25 Zoll vom linken Rand.

SET ONLINE-FMT=PDF
TABLE FILE GGSALES
PRINT BUDDOLLARS DOLLARS
BY STCD
WHERE BUDDOLLARS GE 25000
WHERE STCD EQ 'R1019'
ON TABLE SUBHEAD
"Sales Report"
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET SQUEEZE ON
ON TABLE SET STYLESHEET * 
TYPE = TABHEADING, POSITION = 1.25, $ 
ENDSTYLE
END

Die Ausgabe ist:



Beispiel: Eine Anfangsposition für eine Reportkopfzeile in HTML einstellen

Die Anfrage erzeugt ein internes Cascading StyleSheet als Teil des HTML-Codes, was die Verwendung des Attributs POSITION ermöglicht, um eine Anfangsposition für die Kopfzeile (Verkaufsreport) 1,5 Zoll vom linken Rand anzugeben.

SET ONLINE-FMT = HTML
TABLE FILE GGSALES
PRINT BUDDOLLARS DOLLARS
BY STCD
WHERE BUDDOLLARS GE 25000
WHERE STCD EQ 'R1019'
ON TABLE SUBHEAD
"Sales Report"
" "
ON TABLE SET PAGE-NUM OFF 
ON TABLE SET HTMLCSS ON 
ON TABLE SET STYLESHEET *
TYPE=REPORT, GRID=OFF, $ 
TYPE = TABHEADING, POSITION = 1.5, $ 
ENDSTYLE
END

Die Ausgabe ist:


Nach oben

x
Syntax: Eine Anfangsposition für ein Kopf- oder Fußzeilenelement einstellen

Verwenden Sie für einen PDF- oder PS-Report die folgende Syntax, um eine Anfangsposition für ein Kopf- oder Fußzeilenelement in Bezug auf das vorhergehende Element anzugeben.

TYPE = headfoot, [subtype,] POSITION = {+|-}option, $

Hierbei gilt:

headfoot
Ist der Kopf- bzw. Fußzeilentyp. TABHEADING, TABFOOTING, HEADING, FOOTING, SUBHEAD und SUBFOOT sind gültige Werte.
subtype
Sind zusätzliche Attribute, die die Reportkomponente identifizieren. Diese Optionen können separat oder in Kombination verwendet werden, je nachdem, wie genau eine Komponente angegeben werden muss, damit ein Element vollständig identifiziert werden kann. Gültige Werte sind:

LINE identifiziert eine Zeile über ihre Position in der Kopf- oder Fußzeile. Durch das Identifizieren individueller Zeilen können Sie jede Zeile anders formatieren.

Falls eine Kopf- oder Fußzeile aus mehreren Zeilen besteht und Sie eine StyleSheet-Deklaration anwenden, die LINE nicht angibt, wird die Deklaration auf alle Zeilen angewendet. Leerzeilen werden bei der Interpretation des Wertes von LINE mitgezählt.

ITEM identifiziert ein Element über seine Position in einer Zeile. Sie können, um eine Kopf- oder Fußzeile in Elemente zu unterteilen, die Platzmarkierung <+0> verwenden. Siehe Eine Reportkomponente in einem WebFOCUS StyleSheet identifizieren.

Gehen Sie folgendermaßen vor, um eine ITEM-Nummer für ein OBJECT zu bestimmen:

  • Zählen Sie, wenn Sie OBJECT=TEXT verwenden, nur die Textfolgen von links nach rechts.
  • Zählen Sie, wenn Sie OBJECT=FIELD verwenden, nur die Werte von links nach rechts.
  • Zählen Sie, wenn Sie OBJECT nicht verwenden, Textfolgen und Feldwerte von links nach rechts.

Wenn Sie eine Stylesheet-Deklaration anwenden, die ITEM angibt, wird vom Anfang jeder Zeile in der Kopf- oder Fußzeile und nicht nur vom Anfang der ersten Zeile an gezählt.

OBJECT identifiziert ein Element in einer Kopf- oder Fußzeile als Textfolge oder Feldwert. TEXT und FIELD sind gültige Werte. TEXT kann für Freitext oder eine Amper-Variable (&) des Dialogue Manager stehen.

Es ist nicht nötig, dass Sie OBJECT=TEXT angeben, es sei denn Sie formatieren sowohl Textfolgen als auch eingebettete Felder in derselben Kopf- oder Fußzeile.

option
Ist die Ausrichtungsmethode. Gültige Werte sind:

Position ist der gewünschte Abstand, der für die absolute Positionierung durch das Attribut UNITS (der Default ist Zoll) angegeben wird.

+ platziert das Kopf- oder Fußzeilenelement mit dem spezifizierten Abstand rechts neben das vorangehende Element. Für das erste Element in einer Kopf- oder Fußzeile ist das vorhergehende Element der linke Rand des Reports.

- platziert das Kopf- oder Fußzeilenelement mit dem spezifizierten Abstand links neben das vorangehende Element. Dies ist hilfreich, falls Sie Bilder in einer Kopfzeile überlappen lassen möchten.

column_title richtet das Kopf- oder Fußzeilenelement mit dem ersten Zeichen der gewünschten Spalte aus.



Beispiel: Eine absolute Startposition für ein Kopfzeilenelement einstellen

Diese Anfrage verwendet die Platzmarkierung <+0>, um die Reportkopfzeile in drei Textfolgen zu unterteilen. Sie platziert die dritte Textfolge (1st Qtr 2001) 3 Zoll neben den linken Reportrand. Diese Methode kann sowohl in PDF- als auch in PS-Reports angewendet werden.

SET ONLINE-FMT = PDF
TABLE FILE GGSALES
SUM UNITS DOLLARS BY CATEGORY BY PRODUCT
ON TABLE SUBHEAD 
"Sales Report - <+0>All Products<+0> 1st Qtr 2001" 
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET SQUEEZE ON
ON TABLE SET STYLESHEET * 
TYPE = TABHEADING, OBJECT = TEXT, ITEM=1, SIZE = 12, STYLE = BOLD, $
TYPE = TABHEADING, OBJECT = TEXT, ITEM=2, STYLE = BOLD, $
TYPE = TABHEADING, OBJECT = TEXT, ITEM=3, POSITION = 3, $ 
ENDSTYLE
END

Die Ausgabe ist:



Beispiel: Eine relative Startposition für ein Kopfzeilenelement einstellen

Diese Anfrage verwendet die Platzmarkierung <+0>, um die Reportkopfzeile in drei Textfolgen zu unterteilen. Sie platziert die dritte Textzeichenfolge (1st Qtr 2001) 1 Zoll rechts neben das vorangehende Element in der Kopfzeile. Zoll ist der Default der Messgröße. Diese Methode kann sowohl in PDF- als auch in PS-Reports angewendet werden.

SET ONLINE-FMT = PDF
TABLE FILE GGSALES
SUM UNITS DOLLARS BY CATEGORY BY PRODUCT
ON TABLE SUBHEAD 
"Sales Report - <+0>All Products<+0> 1st Qtr 2001" 
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET SQUEEZE ON
ON TABLE SET STYLESHEET * 
TYPE = TABHEADING, OBJECT = TEXT, ITEM=1, SIZE = 12, STYLE = BOLD, $
TYPE = TABHEADING, OBJECT = TEXT, ITEM=2, STYLE = BOLD, $
TYPE = TABHEADING, OBJECT = TEXT, ITEM=3, POSITION = +1, $ 
ENDSTYLE
END

Die Ausgabe ist:



Beispiel: Ein Kopfzeilenelement mit einer Spalte ausrichten

Diese Anfrage verwendet die Platzmarkierung <+0>, um die Reportkopfzeile in drei Textfolgen zu unterteilen. Sie platziert die zweite Textfolge an der horizontalen Position, an der sich die Spalte UNITS (Stückabsatz) befindet. Diese Methode kann sowohl in PDF- als auch in PS-Reports angewendet werden.

SET ONLINE-FMT = PDF
TABLE FILE GGSALES
SUM UNITS DOLLARS BY CATEGORY BY PRODUCT
ON TABLE SUBHEAD 
"Sales Report - <+0>All Products<+0> 1st Qtr 2001" 
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET SQUEEZE ON
ON TABLE SET STYLESHEET * 
TYPE = TABHEADING, LINE=1, ITEM=2, POSITION=UNITS, $ 
ENDSTYLE
END

Die Ausgabe ist:

Tipp: In dieser Anfrage wird die Spalte (UNTIS) durch ihren Namen definiert. Es gibt jedoch andere Möglichkeiten, um eine Spalte zu identifizieren, die Sie formatieren möchten. Siehe Eine Reportkomponente in einem WebFOCUS StyleSheet identifizieren.


Nach oben

x
PRINTPLUS verwenden

Vorgehensweise:

PRINTPLUS enthält Verbesserungen und zeigt Alternativen an, die von WebFOCUS angegeben werden. Sie können z. B. FOOTING nach SUBFOOT in Ihrem Report platzieren. PRINTPLUS gibt Ihnen die Flexibilität, exakt den von Ihnen gewünschten Report zu erstellen.

Der PRINTPLUS-Parameter muss auf ON gestellt sein, um die folgenden TABLE-Fähigkeiten zu verwenden:

Hinweis: PRINTPLUS wird von StyleSheets nicht unterstützt. In diesem Fall wird eine Warnmeldung angezeigt.



x
Syntax: PRINTPLUS verwenden

Geben Sie diesen Befehl ein:

SET PRINTPLUS = {ON|OFF}


Beispiel: PRINTPLUS mit SUBFOOT und FOOTING verwenden

Wenn PRINTPLUS aktiviert wurde, wird SUBFOOT zuerst angezeigt, gefolgt von FOOTING.

SET PRINTPLUS = ON
 TABLE FILE CAR
  PRINT CAR MODEL
  BY SEATS BY COUNTRY
  IF COUNTRY EQ ENGLAND OR FRANCE OR ITALY
  ON TABLE SUBFOOT
  " "
  " SUMMARY OF CARS IN COUNTRY BY SEATING CAPACITY"
  FOOTING
  " RELPMEK CAR SURVEY "
ON TABLE SET STYLE *
TYPE=REPORT,GRID=OFF,$
 END

Die Ausgabe ist:

SEATS
COUNTRY
CAR
MODEL
-----
-------
-----
    2
ENGLAND
TRIUMPH
TR7
ITALY
ALFA ROMEO
2000 GT VELOCE
ALFA ROMEO
2000 SPIDER VELOCE
MASERATI
DORA 2 DOOR
    4
ENGLAND
JAGUAR
V12XKE AUTO
JENSEN
INTERCEPTOR III
ITALY
ALFA ROMEO
2000 4 DOOR BERLINA
    5
ENGLAND
JAGUAR
XJ12L AUTO
FRANCE
PEUGEOT
504 4 DOOR
 
 
 
 
 SUMMARY OF CARS IN COUNTRY BY SEATING CAPACITY
 RELPMEK CAR SURVEY


x
Platzmarkierungen verwenden, um die Positionierung zu verfeinern

In HTML- und PDF-Reports, die proportional Schriftarten verwenden, können Sie verschiedene Arten von Platzmarkierungen verwenden, um die Positionierung der Kopf- und Fußzeilen sowie der Elemente darin näher zu bestimmen. Sie können, um die Steuerung zu maximieren, Platzmarkierungen mit anderen Ausrichtungsmethoden kombinieren. Siehe Eine Ausrichtungsmethode für Kopf- und Fußzeilenelemente auswählen.

Die folgenden Platzmarkierungen ermöglichen es Ihnen, Elemente zu positionieren und Elemente zu identifizieren, die formatiert werden sollen:

Hinweis: Wenn auf eine schließende Platzmarkierung direkt eine öffnende folgt (><), wird zwischen den Platzmarkierungen eine Leerstelle platziert (> <). Dies muss beachtet werden, wenn Formatierung angewendet wird.

Sie können auch Platzmarkierungen verwenden, um Kopfzeilen- und Fußzeilenelemente an festgelegten oder relativen Spaltenpositionen zu positionieren. Manche Platzmarkierungen steuern die Positionierung basierend auf der vordefinierten Breite eines Zeichens einer nichtproportionalen Schriftart. Dies ist eine Legacy-Formatierungsmethode, die für proportionale Schriftarten nicht unterstützt wird.



Beispiel: Ein Zeichen direkt hinter ein Feld in einem HTML-Report positionieren

Diese Anfrage erzeugt einen HTML-Report, in dem die schließende runde Klammer und der Punkt in der Sortierkopfzeile direkt auf das Feld STORE_CODE bzw. STATE folgen. Dieses Verhalten wird gesteuert durch die <-1-Platzmarkierungen, die eine verhältnismäßige Anfangsposition zum vorhergehenden Objekt indizieren. Ohne diese Platzmarkierungen, die angeben, dass die Interpunktionszeichen auf die vorhergehenden Objekte folgen sollten, würde an jeder dieser Positionen in der Anzeige ein zusätzliches Leerzeichen angezeigt.

SET ONLINE-FMT = HTML
SET PAGE-NUM = OFF
JOIN STORE_CODE IN CENTCOMP TO STORE_CODE IN CENTORD
TABLE FILE CENTCOMP
HEADING
"Century Corporation Orders Report </1"
PRINT PROD_NUM QUANTITY LINEPRICE
BY STORE_CODE NOPRINT
BY ORDER_NUM
ON STORE_CODE SUBHEAD 
"Century Corporation orders for store <STORENAME <0X
(store # <STORE_CODE<-1 ) in <STATE|.</1" 
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
ENDSTYLE
END

Dies ist die Teilausgabe:



Beispiel: Ein Zeichen direkt hinter ein Feld in einem PDF- oder PS-Report positionieren

In einem PDF-Report muss auf ein eingebettetes Feld in einer Kopf- oder Fußzeile ein Leerzeichen in der Anfrage folgen, damit es bei der Verarbeitung erkannt wird. Es kann jedoch sein, dass das Leerzeichen in der Ausgabe nicht gewünscht ist. Dieses Beispiel zeigt zwei Methoden für die Positionierung von Interpunktionszeichen direkt nach einem Feld in einem PDF-Report.

Die erste Methode verwendet das Attribut POSITION in einem StyleSheet, um die schließende runde Klammer direkt hinter den Wert STORE_CODE zu positionieren. Die zweite Methode verwendet die Platzmarkierung <-1, um den Punkt direkt hinter den Wert STATE zu positionieren. Die Messgröße POSITION basiert auf den Bezeichnungs-POINTS von UNITS. Durch Ausprobieren wurde herausgefunden, dass -7 Punkte die schließende runde Klammer an die richtige Stelle hinter dem Feld verschiebt, wobei die defaultmäßige proportionale Schriftart und Größe verwendet wird.

SET ONLINE-FMT = PDF
SET PAGE-NUM = OFF
JOIN STORE_CODE IN CENTCOMP TO STORE_CODE IN CENTORD
 
TABLE FILE CENTCOMP
HEADING
"Century Corporation Orders Report"
PRINT PROD_NUM QUANTITY LINEPRICE
BY STORE_CODE NOPRINT
BY ORDER_NUM
ON STORE_CODE SUBHEAD
"Century Corporation orders for store <STORENAME (store # <STORE_CODE ) 
in <0X <STATE <-1 . </1"
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, UNITS=POINTS, $ 
TYPE=SUBHEAD, OBJECT=TEXT, ITEM=3, POSITION= -7, $
ENDSTYLE
END

Die Ausgabe ist:

Ohne die Platzmarkierung und die Positionsmessgröße hätte die Ausgabe folgendermaßen ausgesehen:



Beispiel: Positionsmessgrößen für Schriftartattribute anpassen

Diese Anfrage verwendet die Schriftart Helvetica in der Größe 12 Punkte. Durch Ausprobieren wurde herausgefunden, dass der POSITION-Wert von -2 den Text in dieser Schriftart und Größe an die erforderliche Position verschiebt.

SET ONLINE-FMT = PDF
SET PAGE-NUM = OFF
JOIN STORE_CODE IN CENTCOMP TO STORE_CODE IN CENTORD
 
TABLE FILE CENTCOMP
HEADING
"CENTURY CORPORATION ORDERS REPORT"
PRINT PROD_NUM QUANTITY LINEPRICE
BY STORE_CODE NOPRINT WHERE STORE_CODE EQ '1003NY' OR '1003CT' OR
    '1003NJ'
BY ORDER_NUM
ON STORE_CODE SUBHEAD
"CENTURY CORPORATION ORDERS FOR STORE <STORENAME (store # <STORE_CODE)<0X
 IN <STATE <-1 . </1"
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, UNITS=POINTS, FONT='Helvetica', SIZE=12, $ 
TYPE=SUBHEAD, OBJECT=TEXT, ITEM=3, POSITION= -2, $ 
ENDSTYLE
END

Tipp: Das Attribut POSITION kann nicht verwendet werden, um ein Kopfzeilenelement in einem HTML-Report zu positionieren. Sie können jedoch dasselbe Ergebnis auch erzielen, indem Sie die horizontalen Platzmarkierungen <-1 direkt hinter die Felder STORE_CODE und STATE platzieren. Fügen Sie zwischen dem Feld und dem Zeichen, das darauf folgt, kein Leerzeichen ein.

Die Ausgabe ist:


WebFOCUS