Dieses Kapitel beschreibt verschiedene Möglichkeiten, wie Sie die Anzeige der von einem
DISPLAY-Statement erzeugten
Spaltenüberschriften beeinflussen können.
Folgende Themen werden behandelt:
Standard-Spaltenüberschriften unterdrücken - die NOHDR-Option
Unterstreichungszeichen für Überschriften - der UC-Parameter
Spaltenüberschriften unterdrücken - die Schrägstrich-Notation (’/’)
Standardmäßig wird jedes mit einem DISPLAY-Statement ausgegebene Datenbankfeld mit einer (für das
Feld im DDM definierten)
Standard-Spaltenüberschrift ausgegeben.
** Example 'DISPLX01': DISPLAY ************************************************************************ DEFINE DATA LOCAL 1 VIEWEMP VIEW OF EMPLOYEES 2 PERSONNEL-ID 2 NAME 2 BIRTH 2 JOB-TITLE END-DEFINE * READ (3) VIEWEMP BY BIRTH DISPLAY PERSONNEL-ID NAME JOB-TITLE END-READ END
Ausgabe des Programms DISPLX01:
Das obige Beispielprogramm verwendet Standard-Spaltenüberschriften und erzeugt folgende Ausgabe:
Page 1 04-11-11 14:15:54 PERSONNEL NAME CURRENT ID POSITION --------- -------------------- ------------------------- 30020013 GARRET TYPIST 30016112 TAILOR WAREHOUSEMAN 20017600 PIETSCH SECRETARY
Wünschen Sie in Ihrem Report keine Spaltenüberschriften, geben Sie im DISPLAY-Statement das Schlüsselwort
NOHDR an, zum
Beispiel:
DISPLAY NOHDR PERSONNEL-ID NAME JOB-TITLE
Wenn Sie statt der Standard-Spaltenüberschriften eigene Spaltenüberschriften ausgeben
möchten, geben Sie unmittelbar vor dem jeweiligen Feld einen Text in Apostrophen (') an,
wobei 'text' die für das Feld zu verwendende
Spaltenüberschrift ist.
** Example 'DISPLX08': DISPLAY (with column title in 'text')
************************************************************************
DEFINE DATA LOCAL
1 VIEWEMP VIEW OF EMPLOYEES
2 PERSONNEL-ID
2 NAME
2 BIRTH
2 JOB-TITLE
END-DEFINE
*
READ (3) VIEWEMP BY BIRTH
DISPLAY PERSONNEL-ID
'EMPLOYEE' NAME
'POSITION' JOB-TITLE
END-READ
END
Ausgabe des Programms DISPLX08:
Das obige Programm enthält für das Feld NAME die Spaltenüberschrift
EMPLOYEE und für das Feld JOB-TITLE die Spaltenüberschrift
POSITION; für das Feld PERSONNEL-ID wird die
Standard-Spaltenüberschrift verwendet. Das Programm erzeugt folgende Ausgabe:
Page 1 04-11-11 14:15:54 PERSONNEL EMPLOYEE POSITION ID --------- -------------------- ------------------------- 30020013 GARRET TYPIST 30016112 TAILOR WAREHOUSEMAN 20017600 PIETSCH SECRETARY
Zur Ausgabe eines Reports ohne Kopfzeilen und Spaltenüberschriften geben Sie die Optionen
NOTITLE und
NOHDR
gleichzeitig an, und zwar in der folgenden Reihenfolge:
DISPLAY NOTITLE NOHDR PERSONNEL-ID NAME JOB-TITLE
Standardmäßig werden Spaltenüberschriften zentriert über den Spalten ausgegeben. Mit dem
Session-Parameter HC
(Überschriften-Zentrierung) können Sie die Ausrichtung der Spaltenüberschriften
beeinflussen:
HC=L |
Spaltenüberschriften werden linksbündig ausgerichtet. |
|---|---|
HC=R |
Spaltenüberschriften werden rechtsbündig ausgerichtet. |
HC=C |
Spaltenüberschriften werden zentriert. Dies ist die Standardeinstellung. |
Sie können den HC-Parameter in einem FORMAT-Statement angeben; er gilt dann
für den gesamten Report. Sie können ihn auch in einem DISPLAY-Statement angeben, und zwar sowohl auf Statement- wie
auf Elementebene.
Beispiel für die Angabe des HC-Parameters auf Statement-Ebene, d.h. für die linksbündige Ausrichtung aller Spaltenüberschriften:
DISPLAY (HC=L) PERSONNEL-ID NAME JOB-TITLE
Mit dem Session-Parameter HW (Überschriftenbreite) bestimmen Sie die Breite
einer von einem DISPLAY-Statement erzeugten Spalte.
HW=ON |
Die Breite einer DISPLAY-Spalte wird entweder durch die Länge
des Feldes oder durch die Länge der Spaltenüberschrift bestimmt, je nachdem was
länger ist. Dies ist die Standardeinstellung.
|
|---|---|
HW=OFF |
Wenn Sie HW=OFF angeben, wird die Breite einer
DISPLAY-Spalte allein durch die Länge des Feldes bestimmt.
Bitte
beachten Sie, dass |
Sie können den HW-Parameter in einem FORMAT-Statement verwenden; er gilt dann
für den gesamten Report. Sie können ihn auch in einem DISPLAY-Statement angeben, und zwar sowohl auf Statement- wie
auf Elementebene.
Mit dem Session-Parameter FC bestimmen Sie das Füllzeichen, das auf
beiden Seiten der von einem DISPLAY-Statement erzeugten Überschrift über die
gesamte Breite der Spalte erscheint. Voraussetzung ist, dass die Spaltenbreite durch die
Feldlänge und nicht durch die Überschrift bestimmt wird (vgl. HW-Parameter und Beschreibung
oben), sonst hat der
FC-Parameter keine Wirkung.
Wenn eine Feldgruppe oder eine Periodengruppe mit einem DISPLAY-Statement ausgegeben wird, wird eine
Gruppenüberschrift über den Überschriften der einzelnen Felder der Gruppe
ausgegeben. Mit dem Session-Parameter GC (Group Filler Character) bestimmen Sie das
Füllzeichen, das auf beiden Seiten der Gruppenüberschrift erscheinen soll.
Während der FC-Parameter für Überschriften einzelner Felder gilt,
bezieht sich der GC-Parameter auf Überschriften für Feldgruppen.
Sie können die Parameter FC und GC in einem
FORMAT-Statement verwenden; sie
gelten dann für den gesamten Report. Sie können sie auch in einem DISPLAY-Statement angeben, und zwar
sowohl auf Statement- wie auf Elementebene.
** Example 'FORMAX01': FORMAT (with parameters FC, GC)
************************************************************************
DEFINE DATA LOCAL
1 VIEWEMP VIEW OF EMPLOYEES
2 NAME
2 INCOME (1:1)
3 CURR-CODE
3 SALARY
3 BONUS (1:1)
END-DEFINE
*
FORMAT FC=* GC=$
*
READ (3) VIEWEMP BY NAME
DISPLAY NAME (FC==) INCOME (1)
END-READ
END
Ausgabe des Programms FORMAX01:
Page 1 04-11-11 14:15:54
========NAME======== $$$$$$$$$$$$INCOME$$$$$$$$$$$$
CURRENCY **ANNUAL** **BONUS***
CODE SALARY
-------------------- -------- ---------- ----------
ABELLAN PTA 1450000 0
ACHIESON UKL 10500 0
ADAM FRA 159980 23000
Standardmäßig werden Kopfzeilen und Überschriften mit einem Bindestrich (-) unterstrichen.
Mit dem Session-Parameter UC (Unterstreichungszeichen) können Sie ein anderes
Zeichen bestimmen, das als Unterstreichungszeichen verwendet werden soll.
Sie können den UC-Parameter in einem FORMAT-Statement verwenden; er gilt dann
für den gesamten Report. Sie können ihn auch in einem DISPLAY-Statement angeben, und zwar sowohl auf Statement- wie
auf Elementebene.
** Example 'FORMAX02': FORMAT (with parameter UC) ************************************************************************ DEFINE DATA LOCAL 1 VIEWEMP VIEW OF EMPLOYEES 2 PERSONNEL-ID 2 NAME 2 BIRTH 2 JOB-TITLE END-DEFINE * FORMAT UC== * WRITE TITLE LEFT JUSTIFIED UNDERLINED 'EMPLOYEES REPORT' SKIP 1 READ (3) VIEWEMP BY BIRTH DISPLAY PERSONNEL-ID (UC=*) NAME JOB-TITLE END-READ END
Im obigen Programm ist der UC-Parameter auf Programmebene und auf Feldebene
gesetzt: das im FORMAT-Statement
angegebene Unterstreichungszeichen (=) gilt für den ganzen Report außer für das Feld
PERSONNEL-ID, für das ein anderes Unterstreichungszeichen (*) angegeben
ist.
Ausgabe des Programms FORMAX02:
EMPLOYEES REPORT =============================================================================== PERSONNEL NAME CURRENT ID POSITION ********* ==================== ========================= 30020013 GARRET TYPIST 30016112 TAILOR WAREHOUSEMAN 20017600 PIETSCH SECRETARY
Mit der Notation Apostroph-Schrägstrich-Apostroph ('/') können Sie die
Ausgabe von Standard-Spaltenüberschriften für einzelne Felder in einem DISPLAY-Statement unterdrücken.
Im Gegensatz zur NOHDR-Option, mit der Sie die Ausgabe von
Standard-Spaltenüberschriften für alle Spalten unterdrücken können, können Sie
mit der '/'-Notation die Überschrift für eine einzelne Spalte
unterdrücken.
Dazu geben Sie die Notation '/' in einem DISPLAY-Statement jeweils unmittelbar vor dem Namen des
Feldes an, dessen Spaltenüberschrift unterdrückt werden soll.
Zwei Beispiele zum Vergleich:
DISPLAY NAME PERSONNEL-ID JOB-TITLE
In diesem Beispiel werden die Standardüberschriften aller drei Spalten ausgegeben:
Page 1 04-11-11 14:15:54
NAME PERSONNEL CURRENT
ID POSITION
-------------------- --------- -------------------------
ABELLAN 60008339 MAQUINISTA
ACHIESON 30000231 DATA BASE ADMINISTRATOR
ADAM 50005800 CHEF DE SERVICE
ADKINSON 20008800 PROGRAMMER
ADKINSON 20009800 DBA
ADKINSON 20011000 SALES PERSON
DISPLAY '/' NAME PERSONNEL-ID JOB-TITLE
In diesem Beispiel wird mit der Notation '/' die Spaltenüberschrift für das
Feld NAME unterdrückt:
Page 1 04-11-11 14:15:54
PERSONNEL CURRENT
ID POSITION
--------- -------------------------
ABELLAN 60008339 MAQUINISTA
ACHIESON 30000231 DATA BASE ADMINISTRATOR
ADAM 50005800 CHEF DE SERVICE
ADKINSON 20008800 PROGRAMMER
ADKINSON 20009800 DBA
ADKINSON 20011000 SALES PERSON
Siehe die folgenden Beispiel-Programme im Kapitel Referenzierte Beispielprogramme: