In diesem Abschnitt: |
Sie können Daten in einem Report positionieren, indem Sie eine Ausrichtung (rechts, links oder zentriert) einer Spalte auswählen oder, indem Sie angeben, ob Daten in einer Zelle umgebrochen werden sollen. Weitere Informationen über das Positionieren von Spalten auf der Seite finden Sie unter Die Reportseite layouten.
Vorgehensweise:
Referenz: |
Sie können den Umbruch von Reportdaten in einem Report steuern und so Zeilenumbrüche in Reportzellen verhindern. Wenn Sie HTML-Ausgabe verwenden, werden die meisten Webbrowser Reportdaten automatisch umbrechen, wenn diese nicht in eine einzelne Zellenzeile passen.
Hierbei wird der Inhalt der Zelle auf die nächste Zeile verschoben. Ein Webbrowser bricht Daten auf der Basis der Algorithmus-Einstellungen um. Verwenden Sie das Attribut WRAP, wenn Sie Umbruch durch den Webbrowser unterdrücken möchten.
Per Default ist WRAP für HTML-Ausgabe auf ON gestellt, was es jedem einzelnen Browser ermöglicht, die Breite jeder Spalte im Report zu definieren. Für PDF-, PS-, DHTML- und PPT-Ausgabe ist WRAP per Default auf OFF eingestellt. Für diese positionierten Ausgabeformate, in denen die Position jedes Elements im Report explizit definiert ist, ist WRAP = ON kein gültiger Wert, aber es können bestimmte Breiten mit der Option n definiert werden.
Sie können in PDF- und PostScript-Reportausgabe den Zeilenabstand in umgebrochenen Zeilen mit dem WRAPGAP-Attribut steuern.
Daten in PDF-Reports umbrechen, die die OVER-Phrase verwenden
OVER ermöglicht die Anzeige eines Datensatzes über mehrere Zeilen in einem Report hinweg. Per Default ändert sich, wenn OVER in einer Anfrage definiert wurde, der Report von der Darstellung auf Spaltenebene zu einer Darstellung auf Zeilenebene. Die Feldtitel werden links neben jedem Wert angezeigt, und nicht in jeder Spalte oben. Dieses Layout wurde nicht so konzipiert, dass es auf eine bestimmte Weise ausgerichtet wird, sondern so, dass die Präsentation mehrerer Elemente in einem kleinen Bereich möglich ist. In vielen Fällen verwenden Reports, die Spalten übereinander platzieren, leere AS-Namen, damit die Spalten richtig ausgerichtet werden. Sie können das Attribut WRAP verwenden, um Daten in PDF-Reports umzubrechen, die OVER verwenden, und diese Methode funktioniert gut mit leeren AS-Namen.
Daten in PDF-Reports umbrechen, die die ACROSS-Phrase verwenden
In einer Anfrage, die ACROSS verwendet, wird in der Ausgabe jeder Wert des ACROSS-Feldes über den Datenspalten angezeigt, die auf diesen ACROSS-Wert zutreffen.
Wenn der ACROSS-Wert länger ist als die Breite seiner Spalte, können Sie den ACROSS-Wert innerhalb der Breite seiner zu Grunde liegenden Spalten umbrechen.
Per Default ist die Breite jeder ACROSS-Wertgruppe (der ACROSS-Wert und die Datenspalten darin) definiert als entweder die Summe der Breite der Datenspalten oder der längste ACROSS-Wert für diese Gruppe, je nachdem, was länger ist. Mit Umbruch wird die Größe jedes ACROSS-Umbruchs definiert basierend auf dieser Regel, einschließlich aller Datenspalten und nicht umgebrochener Across-Felder.
Die Breite jeder ACROSS-Spalte für eine gegebene ACROSS-Gruppe ist definiert als die Länge des längsten Werts für diese ACROSS-Gruppe. Es wird für jede Gruppe nur eine Breite verwendet, so dass in Gruppen, in denen die Werte kürzer sind als der längste Wert, eine größere rechte Lücke in der Zelle entsteht.
In Reports mit mehreren ACROSS-Feldern können Sie individuelle ACROSS-Felder oder alle umbrechen. Jeder designierte Wert wird innerhalb der definierten ACROSS-Gruppe umgebrochen.
Verwenden Sie, um den Umbruch von Text in einem Report zu steuern, in einem StyleSheet die folgende Syntax:
TYPE=type, [subtype,] WRAP=value, $
Hierbei gilt:
ON aktiviert den Datenumbruch. ON ist der Defaultwert für HTML-Reportausgabe. Für PDF-, PS-, DHTML- und PPT-Reportausgabe ist WRAP per Default auf OFF eingestellt. Für diese positionierten Formate, in denen die Position jedes Elements im Report explizit definiert ist, ist WRAP = ON kein gültiger Wert, aber es können bestimmte Breiten mit der Option n definiert werden. Für HTML-Reports wird WRAP für alle Felder unterstützt. In PDF-Reports wird WRAP nur für eingebettete Feldern unterstützt, nicht für Text.
Hinweis: Diese Einstellung wird nicht unterstützt, wenn Sie WRAP mit OVER in PDF-Reportausgabe verwenden.
OFF deaktiviert den Datenumbruch. Dies ist der Defaultwert für PDF-, PS-, DHTML- und PPT-Reportausgabe.
n gibt einen speziellen numerischen Wert an, auf den die Spaltenbreite eingestellt werden kann. Der Werte entspricht der im UNITS-Parameter angegebenen Messgröße. Diese Einstellung wird unterstützt für den Umbruch von Daten in PDF-Reports, die die OVER-Phrase verwenden.
Hinweis: WRAP=ON und WRAP=n werden mit JUSTIFY nicht unterstützt.
Im folgenden Beispiel mit WRAP=ON werden Daten basierend auf der Funktionalität des Webbrowsers umgebrochen. Bitte beachten Sie, dass Sie, da der Wert der Default ist, WRAP=ON in der Syntax der Reportanfrage nicht angeben müssen.
TABLE FILE GGPRODS PRINT SIZE UNIT_PRICE PACKAGE_TYPE VENDOR_CODE VENDOR_NAME BY PRODUCT_ID BY PRODUCT_DESCRIPTION ON TABLE SET STYLE * TYPE=REPORT, GRID=ON, $ ENDSTYLE END
Hinweis: Umbruch wird bestimmt durch die Größe Ihres Browserfensters, so dass es sein kann, dass Sie Ihr Fenster verkleinern müssen, um zu sehen, wie im Beispiel die Daten umgebrochen werden, wie in der folgenden Abbildung.
Beachten Sie, dass Datensätze in der Spalte Anbietername umgebrochen und in einer zweiten Zeile fortgesetzt werden.
In der folgenden Reportanfrage mit WRAP=OFF wird der Umbruch von Daten durch den Webbrowser unterdrückt:
TABLE FILE GGPRODS
PRINT SIZE UNIT_PRICE PACKAGE_TYPE
VENDOR_CODE VENDOR_NAME
BY PRODUCT_ID BY PRODUCT_DESCRIPTION
ON TABLE SET STYLE *
TYPE=REPORT, WRAP=OFF, $
TYPE=REPORT, GRID=ON, $
ENDSTYLE
END
Die Ausgabe ist:
Die folgende Anfrage mit der Datenquelle GGPRODS platziert die Spalte VENDOR_NAME auf eine neue Zeile mit der OVER-Phrase. Per Default ist der Umbruch deaktiviert und muss explizit im StyleSheet definiert werden:
TABLE FILE GGPRODS PRINT SIZE UNIT_PRICE PACKAGE_TYPE OVER VENDOR_NAME BY PRODUCT_ID BY PRODUCT_DESCRIPTION ON TABLE PCHOLD FORMAT PDF END
Die Teilausgabe ist in der folgenden Abbildung zu sehen.
Die folgende Version der Anfrage aktiviert Umbruch und stellt eine Spaltenbreite von 1,5 für die Spalte VENDOR_NAME ein, was wegen der OVER-Phrase in eine neue Zeile platziert wurde:
TABLE FILE GGPRODS PRINT SIZE UNIT_PRICE PACKAGE_TYPE OVER VENDOR_NAME BY PRODUCT_ID BY PRODUCT_DESCRIPTION ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, COLUMN=VENDOR_NAME, WRAP=1.5,$ ENDSTYLE END
In der Teilausgabe ist zu sehen, dass die Spalte VENDOR_NAME jetzt umgebrochen wird. Beachten Sie, dass, wenn Sie WRAP ON aktivieren, der Wert OVER umgebrochen wird, und nicht der OVER TITLE:
Das Umbrechen von ACROSS-Werten wird unterstützt für HTML- und PDF-Ausgabeformate.
TYPE=ACROSSVALUE, [ACROSS={fieldname|Nn|An}] WRAP={OFF|ON} ,$
Hierbei gilt:
Hinweis: WRAP=ON wird mit JUSTIFY nicht unterstützt.
In der folgenden Anfrage mit der Datenquelle GGPRODS ist VENDOR_NAME ein ACROSS-Feld:
TABLE FILE GGPRODS HEADING " PRODUCT REPORT" " " PRINT PRODUCT_ID UNIT_PRICE/D5 ACROSS VENDOR_NAME BY SIZE WHERE VENDOR_NAME GT 'B' AND VENDOR_NAME LT 'F' ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, $ TYPE=REPORT, COLUMN=PRODUCT_ID, WIDTH=.25, $ TYPE=REPORT, COLUMN=UNIT_PRICE, WIDTH=.25, $ ENDSTYLE END
Wie es in der folgenden Abbildung zu sehen ist, ist die Ausgabe zu breit für ein Panel, da manche der ACROSS-Feldwerte (Anbieternamen) länger sind als die Summe des Produktcodes und der Spalte Stückpreis darunter.
Die folgende Version der Anfrage bricht die ACROSS-Werte um (TYPE=ACROSSVALUE, WRAP=ON ,$):
TABLE FILE GGPRODS HEADING " PRODUCT REPORT" " " PRINT PRODUCT_ID UNIT_PRICE/D5 ACROSS VENDOR_NAME BY SIZE WHERE VENDOR_NAME GT 'B' AND VENDOR_NAME LT 'F' ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, $ TYPE=REPORT, COLUMN=PRODUCT_ID, WIDTH=.25, $ TYPE=REPORT, COLUMN=UNIT_PRICE, WIDTH=.25, $ TYPE = ACROSSVALUE, WRAP=ON,$ ENDSTYLE END
Der Report passt jetzt in ein Panel, wie es in der folgenden Abbildung zu sehen ist.
Wenn OVER-Felder mit leeren AS-Namen definiert werden (der Wert des Titels der Spalte ist eingestellt auf leer ' '), können sie verwendet werden, um einen Report mit mehreren Datenzeilen zu erstellen, die in einem ausgerichteten Raster dargestellt werden.
In diesem Reporttyp werden die Spaltentitel normalerweise angegeben, indem der Seitenkopfzeile mehrere zugehörige Zeilen hinzugefügt werden, anstatt die Default-Titel zu verwenden, die links neben den Spaltenfeldwerten angezeigt werden. Um OVER-Felder mit eindeutigen Titeln anzuzeigen, die diese neuen Ausrichtungs-Features verwenden, können Sie die Spaltentitel in unabhängige Felder platzieren, und sie als Felder in die gegebene Anfrage aufnehmen.
Im folgenden Beispiel sehen Sie, wie Sie OVER mit leeren AS-Namen und WRAP verwenden, um einen Report mit mehreren Datenzeilen zu erstellen:
TABLE FILE GGPRODS PRINT PACKAGE_TYPE AS '' SIZE AS '' OVER VENDOR_NAME AS '' BY PRODUCT_ID AS '' BY PRODUCT_DESCRIPTION AS '' ON TABLE SUBHEAD "Gotham Grinds" "Products Details" HEADING " Code <+0>Description<+0>Size <+0>Package" -*" <+0> <+0>Vendor" " <+0>Vendor" ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, FONT=ARIAL, SIZE=10, SQUEEZE=ON,$ TYPE=REPORT, COLUMN=PACKAGE_TYPE, SQUEEZE=.5 ,$ TYPE=REPORT, COLUMN=VENDOR_NAME, WRAP=1 ,$ TYPE=REPORT, BORDER=ON, $ TYPE=HEADING, LINE=1, ITEM=1, BORDER=ON, $ TYPE=HEADING, LINE=1, ITEM=2, BORDER=ON, POSITION=PRODUCT_DESCRIPTION,$ TYPE=HEADING, LINE=1, ITEM=3, BORDER=ON, POSITION=SIZE ,$ TYPE=HEADING, LINE=1, ITEM=4, BORDER=ON, POSITION=PACKAGE_TYPE, $ TYPE=HEADING, LINE=2, ITEM=1, BORDER=ON, $ TYPE=HEADING, LINE=2, ITEM=2, BORDER=ON, POSITION=PACKAGE_TYPE,$ ENDSTYLE END
In der Reportausgabe wurden Pakettyp und Paketgröße über den Anbieternamen platziert. Die Seitenkopfzeile enthält die entsprechenden Titel. In der Kopfzeile wurden auch die Titel Paket und Größe über den Titel Anbietername platziert. Beachten Sie, dass die Anbieternamen umgebrochen werden, um die Ausrichtung beizubehalten.
Die Breite sowohl des Spaltentitels als auch der Spaltendaten für jeden OVER-Wert wird bestimmt durch den einen SQUEEZE- oder WRAP-Wert. Die Breite des Titels ist automatisch identisch mit der Breite der umgebrochenen Datenspalte. Wenn der Spaltentitel länger ist als die für den Spaltenumbruch definierte Breite, können Sie entweder einen kürzeren Titel definieren oder Ihre Titel als OVER-Felder hinzufügen, deren Größe unabhängig angepasst werden kann.
In den folgenden Beispielen sehen Sie, wie Sie einen Report mit OVER und WRAP erstellen, der Spaltentitel hat, die länger sind als die vorgesehene WRAP-Größe.
In der folgenden Anfrage werden zwei virtuelle Felder definiert, die die Spaltentitel für die Felder Produktname und Anbietername enthalten. Es wird dann jedes virtuelle Feld neben dem entsprechenden Datenfeld gedrucht und jedes erhält einen leeren AS-Namen. Das erste virtuelle Feld und Datenfeld werden über dem zweiten virtuellen Feld und Datenfeld platziert:
DEFINE FILE GGPRODS TITLE_PROD/A20 = 'Product Description'; TITLE_VEND/A20 = 'Vendor Name'; END TABLE FILE GGPRODS PRINT TITLE_PROD AS '' PRODUCT_DESCRIPTION AS '' OVER TITLE_VEND AS '' VENDOR_NAME AS '' BY PRODUCT_ID AS '' ON TABLE SUBHEAD "Gotham Grinds" "Products Details" ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, FONT=ARIAL, SIZE=10, SQUEEZE=ON,$ TYPE=REPORT, COLUMN=TITLE_PROD , SQUEEZE=1.25 ,$ TYPE=REPORT, COLUMN=TITLE_VEND , SQUEEZE=1.25 ,$ TYPE=REPORT, COLUMN=PRODUCT_DESCRIPTION, WRAP=.75 ,$ TYPE=REPORT, COLUMN=VENDOR_NAME, WRAP=.75 ,$ TYPE=REPORT, BORDER=ON, $ ENDSTYLE END
In der Ausgabe ist zu sehen, dass die Titel und Daten richtig ausgerichtet sind.
Sie können das WRAPGAP-Attribut in einem StyleSheet verwenden, um den Abstand zwischen umgebrochenen Zeilen in PDF- und PostScript-Reportausgabe zu steuern.
type=component, WRAPGAP={ON|OFF|n}
Hierbei gilt:
In der folgenden Anfrage ist Umbruch für die ADDRESS_LN3-Spalte des Reports aktiviert:
TABLE FILE EMPLOYEE
PRINT ADDRESS_LN3
BY LAST_NAME BY FIRST_NAME
WHERE LAST_NAME LE 'CROSS'
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET PAGE NOPAGE
ON TABLE SET STYLE *
type=report, grid=on, $
type=data, topgap=0.2, bottomgap=0.2, $
type=data, wrapgap=off, $
type=REPORT, column=ADDRESS_LN3, wrap=1.0 ,$
END
Mit WRAPGAP=OFF wird jede umgebrochene Zeile in die nächste Reportzeile platziert:
Mit WRAPGAP=ON werden die umgebrochenen Zeilen direkt untereinander platziert:
Sie können WRAPGAP nur für Spalten angeben, für die Umbruch aktiviert ist (das WRAP-Attribut oder der WRAP-Parameter ist auf ON oder eine Zahl eingestellt). Die Attribute TOPGAP und BOTTOMGAP bestimmen, wie viel vertikaler Platz unter und über einer Reportkomponente gelassen werden soll. Wenn Sie die Werte dieser Attribute erhöhen, wird eine Verringerung des Abstands zwischen umgebrochenen Zeilen deutlicher.
Vorgehensweise: Referenz: |
Zusätzlich zum WRAP-Parameter hängt der Textumbruch auch von den Attributen SQUEEZE und GRID ab. Sowohl SQUEEZE als auch GRID können als SET-Befehle oder StyleSheet-Attribute verwendet werden. Wenn Sie für diese zwei Attribute nicht die Defaultwerte verwenden, wirkt sich dies auf das Umbruchverhalten des Browsers aus.
Die folgenden SET-Befehle wirken sich auf den Umbruch von Daten aus.
Befehl |
Aktion |
---|---|
SET SQUEEZE=OFF |
Zwingt den Browser, die gesamte Spaltenbreite anzuzeigen, und unterdrückt den Umbruch von Spaltendaten. |
SET SQUEEZE=ON |
Macht es möglich, dass der Browser sein eigenes Anzeigeverhalten anwendet. Wenn Browser-Einstellungen angegeben wurden, werden Spalten komprimiert auf die Länge des längsten Datenwerts, und Spaltendaten mit eingebetteten Leerstellen werden umgebrochen. |
SET GRID=OFF |
Unterdrückt den Umbruch von Daten automatisch. |
SET GRID=ON |
Hat keine Auswirkung auf den Umbruch oder die Komprimierung der Spaltenbreite. |
SQUEEZE kann entweder als SET-Parameter oder als StyleSheet-Attribut verwendet werden. Verwenden Sie in einem StyleSheet die folgende Syntax, um den Umbruch mit SQUEEZE zu steuern.
TYPE =type, SQUEEZE=value, $
Hierbei gilt:
ON aktiviert den Datenumbruch.
OFF deaktiviert den Datenumbruch. Dies ist der Defaultwert.
n entspricht dem spezifischen numerischen Wert, auf den eine Spaltenbreite gestellt werden kann (nur bei PDF und PostScript gültig). Der Wert entspricht der im UNITS-Parameter angegebenen Messgröße.
Um den Umbruch in einem Report mit dem Attribut SQUEEZE auf OFF eingestellt zu unterdrücken, verwenden Sie die folgende Syntax.
SET SQUEEZE=value, $
Hierbei gilt:
ON aktiviert den Datenumbruch.
OFF deaktiviert den Datenumbruch. OFF ist der Defaultwert.
n entspricht dem spezifischen numerischen Wert, auf den eine Spaltenbreite gestellt werden kann (nur bei PDF und PostScript gültig). Der Wert entspricht der im UNITS-Parameter angegebenen Messgröße.
Hinweis: Falls der Datenwert breiter als die angegebene Breite einer Spalte ist, wird er bei PDF-Reports verborgen. Für Excel-Reports kann die Spaltenbreite angepasst werden, nachdem die Tabellenkalkulation erstellt wurde.
Vorgehensweise: |
Sie können Text innerhalb einer Spalte ausrichten, indem Sie angeben, ob Reportspalten linksbündig, rechtsbündig oder zentriert ausgerichtet werden sollen. Per Default werden alphanumerische Spalten linksbündig ausgerichtet und numerische Spalten rechtsbündig. Kopfzeilen- und Fußzeilenelemente werden linksbündig ausgerichtet. Sie können jedoch den Default mit dem JUSTIFY-Attribut ändern. Weiter Informationen über das Ausrichten von Spaltentiteln mit /R, /L und /C finden Sie unter Kopfzeilen, Fußzeilen, Titel und Labels verwenden.
Verwenden Sie, um eine Spalte linksbündig, rechtsbündig oder zentriert auszurichten, die folgende Syntax in einem StyleSheet:
TYPE=type, [subtype,] [COLUMN=column,] JUSTIFY=option, $
Hierbei gilt:
LEFT gibt an, dass die Spalte linksbündig ausgerichtet werden soll.
RIGHT gibt an, dass die Spalte rechtsbündig ausgerichtet werden soll.
CENTER gibt an, dass die Spalte zentriert werden soll.
Hinweis: JUSTIFY wird nicht unterstützt mit WRAP=ON oder WRAP=n.
Das folgende Beispiel zeigt die StyleSheet-Syntax, die verwendet wurde, um die Daten in der Spalte Anbietername zu zentrieren. Die Überschrift wird auch zentriert.
TABLE FILE GGPRODS
HEADING
"PRODUCT REPORT"
SUM UNITS BY PRODUCT_DESCRIPTION BY PRODUCT_ID BY VENDOR_NAME
ON TABLE SET STYLE *
TYPE=REPORT, COLUMN=VENDOR_NAME, JUSTIFY=CENTER, $
TYPE=HEADING, JUSTIFY=CENTER, $
TYPE=REPORT, GRID=OFF, $
ENDSTYLE
END
Die Ausgabe ist:
Vorgehensweise: |
Feldbasierte Neuformatierung ermöglicht es Ihnen, auf die einzelnen Zeilen in einem Report unterschiedliche Formate anzuwenden, indem Sie ein Feld verwenden, um das Format zu identifizieren, das auf die einzelne Zeile zutrifft. Sie können beispielsweise diese Methode verwenden, um das passende dezimale Währungsformat anzuwenden, wenn jede Zeile ein anderes Land darstellt.
Das Feld, das die Formatspezifikationen enthält, kann Folgendes sein:
Das Feld, das die Formate enthält, muss alphanumerisch sein und wenigstens acht Zeichen lang sein. Es werden nur die ersten acht Zeichen für die Formatierung verwendet.
Es kann sein, dass das feldbasierte Format eine Länge angibt, die länger ist als die Länge des ursprünglichen Feldes. Wenn jedoch die neue Länge mehr als ein Drittel länger ist als die ursprüngliche Länge, kann es sein, dass die Reportspaltenbreite nicht breit genut ist, um den Wert zu enthalten (wird durch Sternchen im Feld gekennzeichnet).
Sie können ein feldbasiertes Format auf jeden beliebigen Feldtyp anwenden. Es muss jedoch das neue Format kompatibel sein mit dem ursprünglichen Format:
Wenn das feldbasierte Format ungültig ist oder eine unzulässige Typkonvertierung angibt, wird das Feld mit Pluszeichen (++++) in der Reportausgabe angezeigt. Wenn das Formatfeld leer ist oder fehlt, wird der Wert ohne Neuformatierung angezeigt.
DEFINE FILE filename format_field/A8 = expression; END
DEFINE format_field/A8 = expression; $
COMPUTE format_field/A8 = expression;
Hierbei gilt:
Nachdem das Formatfeld definiert wurde, können Sie es in einer Reportanfrage anwenden:
TABLE FILE filename displayfieldname/format_field[/just] END
Hierbei gilt:
DEFINE FILE CAR CFORMAT/A8 = DECODE COUNTRY('ENGLAND' 'D10.1' 'JAPAN' 'D10' ELSE 'D10.2'); END TABLE FILE CAR SUM SALES/CFORMAT/C DEALER_COST/CFORMAT BY COUNTRY END
Die Ausgabe ist:
COUNTRY SALES DEALER_COST ------- --------- ----------- ENGLAND 12,000.0 37,853.0 FRANCE .00 4,631.00 ITALY 30,200.00 41,235.00 JAPAN 78,030 5,512 W GERMANY 88,190.00 54,563.00
Vorgehensweise: Referenz: |
Um HTML-Reports aussagekräftiger zu gestalten, können Sie visuelle Repräsentationen ausgewählter Daten direkt in die Reportausgabe einfügen. Diese visuellen Darstellungen haben die Form von vertikalen bzw. horizontalen Balkendiagrammen, die Beziehungen und Trends zwischen Daten verdeutlichen. Details finden Sie unter Reportdaten anzeigen.
Sie können optionale Formatierungsattribute für Datenvisualisierungs-Balkendiagramme in der GRAPHTYPE-Deklaration angeben. Die folgende Tabelle listet die Formatierungsattribute und je eine Beschreibung auf:
Formatierungsattribut |
Beschreibung |
---|---|
GRAPHCOLOR |
Stellt die Farbe der Balkendiagramme ein. |
GRAPHLENGTH |
Stellt die Länge des längsten Balkendiagramms ein. Der Wert für GRAPHLENGTH bestimmt die Länge in Maßeinheiten (Zoll, Zentimeter, usw.) des längsten Balkendiagramms in einem vertikalen oder horizontalen Balkendiagramm. Der Längenwert wird in den aktuallen Einheiten ausgedrückt, was mit dem StyleSheet-Attribute UNITS eingestellt wird. Der Wert GRAPHLENGTH wird dann in Pixel umgewandelt. |
GRAPHWIDTH |
Stellt die Breite der Balkendiagramme ein. Der Breitenwert wird in den aktuellen Einheiten ausgedrückt. Weitere Informationen über Einheiten finden Sie oberhalb unter GRAPHLENGTH. |
Hinweis: Graphcolor=orange wird nicht unterstützt.
GRAPHTYPE=DATA, {COLUMN|ACROSSCOLUMN|FIELD}=identifier, [GRAPHCOLOR=graphcolor,] [GRAPHLENGTH=lengthvalue,] [GRAPHWIDTH=widthvalue,] $
Hierbei gilt:
Steht für einen der folgenden Werte:
AQUA BLACK BLUE FUCHSIA GRAY GREEN LIME MAROON | NAVY OLIVE PURPLE RED SILVER TEAL WHITE YELLOW |
Dieser Wert wird zu Beginn in den aktuallen Einheiten ausgedrückt (mit dem Attribut UNITS). Dieser Wert wird dann umgewandelt in die entsprechende Pixelanzahl.
Dieser Wert wird zu Beginn in den aktuallen Einheiten ausgedrückt (definiert durch das Attribut UNITS). Dieser Wert wird dann umgewandelt in die entsprechende Pixelanzahl.
Vorgehensweise: |
Mit StyleSheet-Attributen können Sie An-Felder (Zeichen) und AnV-Felder (Varchar) anzeigen, die in einem PDF- oder PostScript-Report auf mehreren Zeilen Zeilenumbrüche enthalten. Zeilenumbrüche können auf Zeilenvorschüben, Zeilenumschaltungen oder einer Kombination aus beidem basieren. Falls Sie diese StyleSheet-Attribute nicht hinzufügen, wird die ganze Linefeed- und Carriage-Return-Formatierung innerhalb dieser Felder ignoriert und alle Zeichen werden auf der gleichen Zeile angezeigt, die umgebrochen wird, damit diese bei der Breite des Reports passt.
TYPE=REPORT,LINEBREAK='type',$
Hierbei gilt:
LF fügt nach jedem Zeilenvorschub in An- und AnV-Feldern einen Zeilenumbruch ein.
CR fügt nach jedem Zeilenumschaltungszeichen in An- und AnV-Feldern einen Zeilenumbruch ein.
LFCR fügt nach jedem Zeilenvorschub in An- und AnV-Feldern, auf den ein Zeilenumschaltungszeichen folgt, einen Zeilenumbruch ein.
CRLF fügt nach jedem Zeilenumschaltungszeichen in An- und AnV-Feldern, auf das ein Zeilenvorschub folgt, einen Zeilenumbruch ein.
Hinweis: Das Format der Reportausgabe muss PDF oder PostScript sein.
Die folgende Anfrage definiert ein benanntes alphanumerisches ANLB-Feld mit einem Semikolon (in einer EDCDIC-Umgebung) oder einem Zirkumflex (in einer ASCII-Umgebung) in der Mitte. Die CTRAN-Funktion ersetzt dann das Semikolon oder Zirkumflex mit einem Zeilenumschaltungszeichen und speichert diese Zeichenfolge in einem Feld namens ANLBC. In der Reportausgabe wird dieses Feld auf zwei Zeilen angezeigt:
DEFINE FILE EMPLOYEE ANLB/A40 ='THIS IS AN An FIELD;WITH A LINE BREAK.'; ANLBC/A40 = CTRAN(40, ANLB, 094, 013 , ANLBC); END TABLE FILE EMPLOYEE PRINT LAST_NAME ANLBC WHERE LAST_NAME EQ 'BLACKWOOD' ON TABLE HOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT,LINEBREAK='CR',$ ENDSTYLE END
Die Ausgabe ist:
Die folgende Anfrage definiert ein benanntes alphanumerisches ANLB-Feld mit einem Semikolon in der Mitte. Die CTRAN-Funktion ersetzt dann das Semikolon (in einer EDCDIC-Umgebung) oder ein Zirkumflex (in einer ASCII-Umgebung) mit einem Zeilenumschaltungszeichen und speichert diese Zeichenfolge in einem Feld namens ANLBC. In der Zwischenfußzeile wird dieses Feld in zwei Zeilen angezeigt:
DEFINE FILE EMPLOYEE ANLB/A40 ='THIS IS AN An FIELD;WITH A LINE BREAK.'; ANLBC/A40 = CTRAN(40, ANLB, 094, 013 , ANLBC); END TABLE FILE EMPLOYEE PRINT FIRST_NAME BY LAST_NAME WHERE LAST_NAME EQ 'BLACKWOOD' ON LAST_NAME SUBFOOT " " " <ANLBC " ON TABLE HOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT,LINEBREAK='CR',$ ENDSTYLE END
Die Ausgabe ist:
WebFOCUS |