471 lines
9.2 KiB
Plaintext
471 lines
9.2 KiB
Plaintext
.ds CH - % -
|
|
.ds LF Version_6/3.3
|
|
.ds RH \f3Einleitung\f1
|
|
.ds RF \f3REPORT\f1
|
|
.ds LH Referenz-Manual
|
|
.bp
|
|
.LP
|
|
.NH 2
|
|
.ft B
|
|
\*(xx\ Report-Kommandos *
|
|
.ft R
|
|
.LP
|
|
.NH 3
|
|
.ft B
|
|
\o'U"'bersicht *
|
|
.ft R
|
|
.LP
|
|
Die Dokumentation wurde so aufgebaut, dass im
|
|
Report-Manual nur die Komponenten des
|
|
Report-Generators
|
|
vorgestellt und einige grunds\o'a"'tzliche
|
|
Ausf\o'u"'hrungen
|
|
gegeben werden, die f\o'u"'r das Verst\o'a"'ndnis
|
|
und die Anwendung von Bedeutung sind.
|
|
Im Manual konnte aus Gr\o'u"'nden der \o'U"'bersichtlichkeit
|
|
keine Darstellung der Generator-Sprache untergebracht
|
|
werden. Es wird darauf hingewiesen, dass die
|
|
Sprache sowohl in der Semantik, als auch in der
|
|
Syntax nicht ganz der gewohnten Umgebung entspricht.
|
|
Die Notwendigkeit zur Schaffung dieser L\o'o"'sung ergibt
|
|
sich daraus, dass der \*(xx\-Tool "awk" f\o'u"'r kleine
|
|
Hauptspeicher nur begrenzt einsetzbar ist und insgesamt
|
|
sehr langsam arbeitet, ausserdem werden h\o'a"'ufig
|
|
Anforderungen zur Gestaltung von Druckbildern gestellt,
|
|
die "awk" nicht erf\o'u"'llen kann.
|
|
Eine Verbindung zur Datenbank wird mit dem Report-Generator
|
|
mittelbar realisiert.
|
|
.LP
|
|
Im Teil II der Anwenderdokumentation werden eine
|
|
ausf\o'u"'hrliche Anleitung zur Programmierung
|
|
der Generator-Sprache mit Beispielen gebracht
|
|
und einige Anwendungsf\o'a"'lle beschrieben.
|
|
Die Anwendung ist nicht grunds\o'a"'tzlich an das Datenbanksystem \*(yy\
|
|
gebunden, allerdings wird bei der Anwendung auf \*(xx\-Files das
|
|
Grundverst\o'a"'ndnis des Programmpaketes vorausgesetzt.
|
|
.LP
|
|
Das Report Manual
|
|
ist in 4 Abschnitte eingeteilt:
|
|
.IP rc
|
|
beschreibt die Nutzung des Compilers
|
|
nach Erstellung des Quelltextes mit dem Editor.
|
|
.IP rg
|
|
beschreibt die Anwendung des eigentlichen Generators (Interpreters)
|
|
zur Realisierung der Ausgabeformatierung unter Nutzung
|
|
des, mit "rc" erzeugten "R_code"-Files, des
|
|
"desc"-Files und des Daten-Files.
|
|
.IP rd
|
|
erzeugt ein description-File aus einer Relation
|
|
bzw. das Skelett eines Reports.
|
|
.IP rp_desc
|
|
druckt ein description-File in lesbarer Form.
|
|
.LP
|
|
.bp
|
|
.SH
|
|
.ft B
|
|
DOKUMENTATION ING_DB TEIL1
|
|
.ft R
|
|
.sp 5
|
|
.ft B
|
|
TEIL REPOPRT *
|
|
.ft R
|
|
.sp 5
|
|
.nf
|
|
####################################################################
|
|
####################################################################
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ### # # ##### ###### ###### ##
|
|
## # ## # # # # # # # ##
|
|
## # # # # # # # # # ##
|
|
## # # # # # #### # # ###### ##
|
|
## # # # # # # # # # # ##
|
|
## # # ## # # # # # # ##
|
|
## ### # # ##### ####### ###### ###### ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ###### ####### ###### ####### ###### ####### ##
|
|
## # # # # # # # # # # ##
|
|
## # # # # # # # # # # ##
|
|
## ###### ##### ###### # # ###### # ##
|
|
## # # # # # # # # # ##
|
|
## # # # # # # # # # ##
|
|
## # # ####### # ####### # # # ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
## ##
|
|
####################################################################
|
|
####################################################################
|
|
.fi
|
|
.bp
|
|
.LP
|
|
.ds RH \f3RC\f1
|
|
.bp
|
|
.RE
|
|
.ft B
|
|
NAME
|
|
.ft R
|
|
.IP
|
|
rc - REPORT Compiler
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
SYNOPSIS
|
|
.ft R
|
|
.IP
|
|
.ft B
|
|
rc
|
|
.ft R
|
|
{[flag] file}
|
|
.sp 1
|
|
.RE
|
|
.IP
|
|
Flags zur Steuerung der Bearbeitung:
|
|
.RS
|
|
.IP -c
|
|
Nur \o'U"'bersetzen, keine Codeerzeugung
|
|
.IP -i
|
|
Eingabe von standard-input
|
|
.IP -l
|
|
automatische Umwandlung der Klein- in Grossbuchstaben
|
|
.IP -o
|
|
Ausgabe des \o'u"'bersetzten Reports auf das R_CODE-File "r_code"
|
|
.IP -s
|
|
Unterdr\o'u"'ckung \o'U"'bersetzungsprotokoll
|
|
.IP -v
|
|
Ausgabe \o'U"'bersetzungsprotokoll
|
|
.RE
|
|
.LP
|
|
.ft B
|
|
BESCHREIBUNG
|
|
.ft R
|
|
.IP
|
|
Der Report-Compiler
|
|
.ft B
|
|
rc
|
|
.ft R
|
|
\o'u"'bersetzt ein oder mehrere Reports
|
|
in einen vom Report-Interpreter
|
|
.ft B
|
|
rg
|
|
.ft R
|
|
verarbeitbare Form.
|
|
Ist im Report eine Beschreibung der zu druckenden Daten
|
|
vorhanden, wird zus\o'a"'tzlich das description-File
|
|
erzeugt.
|
|
.br
|
|
Eine ausf\o'u"'hrliche Beschreibung
|
|
wird im Teil 2 dieser Dokumentation gegeben.
|
|
.LP
|
|
.ft B
|
|
BEISPIELE
|
|
.ft R
|
|
.DS I
|
|
/* \o'U"'bersetze das Quell-File "quel_p" und
|
|
erzeuge das R-code-File "r_code" */
|
|
.sp 1
|
|
rc -o quel_p
|
|
.sp 1
|
|
.DE
|
|
.LP
|
|
.ft B
|
|
SIEHE AUCH
|
|
.ft R
|
|
.IP
|
|
Teil 2 der Dok. REPORT-GENERATOR
|
|
.LP
|
|
.ft B
|
|
NACHRICHTEN
|
|
.ft R
|
|
.IP
|
|
Im Laufzeitprotokoll (auf <stdout>) werden selbsterkl\o'a"'rende
|
|
Kommentare gegeben.
|
|
.LP
|
|
.ds RH \f3RD\f1
|
|
.bp
|
|
.RE
|
|
.ft B
|
|
NAME
|
|
.ft R
|
|
.IP
|
|
rd - Erstellen des description-Files bzw. das Skelett
|
|
.br
|
|
eines Reports
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
SYNOPSIS
|
|
.ft R
|
|
.IP
|
|
.ft B
|
|
rd
|
|
.ft R
|
|
[flags] db rel [file]
|
|
.LP
|
|
.ft B
|
|
BESCHREIBUNG
|
|
.ft R
|
|
.IP
|
|
.ft B
|
|
rd
|
|
.ft R
|
|
erstellt zu der Relation
|
|
.ft B
|
|
`rel'
|
|
.ft R
|
|
der Datenbank
|
|
.ft B
|
|
`db'
|
|
.ft R
|
|
ein description-File. Fehlt das Argument
|
|
.ft B
|
|
`file'
|
|
.ft R
|
|
wird
|
|
der Name
|
|
.ft B
|
|
desc
|
|
.ft R
|
|
gew\o'a"'hlt.
|
|
.sp 1
|
|
.ft B
|
|
Flags:
|
|
.ft R
|
|
.RS
|
|
.IP -o
|
|
Ausgabe auf Standardoutput (anstelle eines Files)
|
|
.IP -r
|
|
Ausgabe eines leeren (skeleton) Reportprogramms
|
|
anstelle des description-files. Fehlt das Argument
|
|
`file` wird der Name
|
|
.ft B
|
|
report
|
|
.ft R
|
|
gewaehlt.
|
|
Die Dom\o'a"'nendefinition ist im Report enthalten.
|
|
.RE
|
|
.LP
|
|
.ft B
|
|
SIEHE AUCH
|
|
.ft R
|
|
.IP
|
|
Teil 2 der Dok. REPORT-GENERATOR
|
|
.RE
|
|
.LP
|
|
.ft B
|
|
BEISPIELE
|
|
.ft R
|
|
.IP
|
|
.DS L
|
|
rd demo personal
|
|
rd -o demo teile > teile.d
|
|
/*leerer Report*/
|
|
rd -r demo personal
|
|
/*oder identisch*/
|
|
rd demo teile teilend
|
|
.DE
|
|
.ds RH \f3RG\f1
|
|
.bp
|
|
.RE
|
|
.ft B
|
|
NAME
|
|
.ft R
|
|
.IP
|
|
rg \- REPORT-Interpreter
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
SYNOPSIS
|
|
.ft R
|
|
.IP
|
|
.ft B
|
|
rg
|
|
.ft R
|
|
{flag}
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
BESCHREIBUNG
|
|
.ft R
|
|
.sp 1
|
|
.IP
|
|
Zur File-Umlenkung sind folgende Flags implementiert:
|
|
.RS
|
|
.IP -dfile
|
|
Nutzung des description-Files
|
|
"file" (Standard:
|
|
.ft B
|
|
desc
|
|
.ft R
|
|
)
|
|
.IP -ffile
|
|
Nutzung des Datenfiles
|
|
"file" (Standard:
|
|
.ft B
|
|
tuple
|
|
.ft R
|
|
)
|
|
.IP -ifile
|
|
Nutzung des R-Code-Files
|
|
"file" (Standard:
|
|
.ft B
|
|
r_code
|
|
.ft R
|
|
)
|
|
.IP -ofile
|
|
Setze das Report-Files auf
|
|
"file" (Standard:
|
|
.ft B
|
|
standard-output)
|
|
.ft R
|
|
.RE
|
|
.IP
|
|
Zur Ein-/Ausgabesteuerung sind folgende Flags implementiert:
|
|
.RS
|
|
.IP -lno
|
|
(entspricht LINES no)
|
|
.br
|
|
L\o'a"'nge des Informationsteils auf
|
|
einer Seite (no Zeilen)
|
|
Standard: Wert von ALL LINES,
|
|
wenn dort definiert
|
|
sonst: 66
|
|
.IP -ano
|
|
(entspricht ALL LINES no)
|
|
.br
|
|
L\o'a"'nge der physischen Druckseite
|
|
(no Zeilen)
|
|
Standard: Wert von LINES
|
|
.IP -cno
|
|
(entspricht COLUMNS no)
|
|
.br
|
|
Breite des Informationsteils
|
|
(no Spalten)
|
|
Standard: 132
|
|
.IP -pno
|
|
(entspricht FROM PAGE no)
|
|
.br
|
|
Es werden nur die Seiten in die
|
|
Liste eingetragen, deren
|
|
Seitennummer gr\o'o"'sser oder gleich
|
|
der angegebenen Zahl no ist.
|
|
Standard: 0
|
|
.IP -Pno
|
|
(entspricht TO PAGE no)
|
|
.br
|
|
Es werden nur die Seiten in die
|
|
Liste eingetragen, deren Seitennummer kleiner oder gleich der
|
|
angegebenen Zahl no ist.
|
|
Standard: 32767 (Maximum)
|
|
.IP -tno
|
|
(entspricht FROM TUPLE no)
|
|
.br
|
|
Es werden nur die Tupel verarbeitet, deren Tupelnummer gr\o'o"'sser
|
|
oder gleich der angegebenen
|
|
Zahl no ist.
|
|
Standard: 0
|
|
.IP -Tno
|
|
(entspricht TO TUPLE no)
|
|
.br
|
|
Es werden nur die Tupel verarbeitet,
|
|
deren Tupelnummer kleiner oder
|
|
gleich der angegebenen Zahl
|
|
no ist.
|
|
Standard: 32767 (Maximum)
|
|
.IP -b
|
|
(entspricht BIG)
|
|
.br
|
|
Alle Kleinbuchstaben werden
|
|
beim Einschreiben in die Liste
|
|
automatisch in Grossbuchstaben
|
|
umgewandelt.
|
|
Standard: keine Umwandlung
|
|
.IP -Dno
|
|
Setze Debug-Information = `no'
|
|
.IP -Sno
|
|
Setze SWITCH `no' = TRUE
|
|
.IP -Vno =
|
|
val Setze VAR `no' = `val'
|
|
.RE
|
|
.LP
|
|
.ft B
|
|
BEISPIELE
|
|
.ft R
|
|
.IP
|
|
|
|
.RE
|
|
.LP
|
|
.ft B
|
|
SIEHE AUCH
|
|
.ft R
|
|
.IP
|
|
Teil 2 der Dok. REPORT-GENERATOR
|
|
.RE
|
|
.ds RH \f3RP\f1
|
|
.bp
|
|
.RE
|
|
.ft B
|
|
NAME
|
|
.ft R
|
|
.IP
|
|
rp_desc \- druckt ein description-File in lesbarer Form
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
SYNOPSIS
|
|
.ft R
|
|
.IP
|
|
.ft B
|
|
rp_desc
|
|
.ft R
|
|
[desc-file]
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
BESCHREIBUNG
|
|
.ft R
|
|
.IP
|
|
Als Argument kann der Name des description-Files angegeben
|
|
werden, wenn der Standardfilename "r_code" nicht zutrifft.
|
|
.IP
|
|
.ft B
|
|
rp_desc
|
|
.ft R
|
|
- druckt das description-File in lesbarer Form.
|
|
.RE
|
|
.sp 1
|
|
.ft B
|
|
BEISPIEL
|
|
.ft R
|
|
.IP
|
|
.DS L
|
|
|
|
rp_desc < description-file der Relation personal >
|
|
rd -r demo personal
|
|
rc -s report
|
|
rp_desc > beispiel
|
|
rm report r_code desc
|
|
cat beispiel
|
|
|
|
| field | type | len | off |
|
|
|~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~|
|
|
| | | | |
|
|
| | | | |
|
|
|~~~~~~~|~~~~~~~|~~~~~~~|~~~~~~~|
|
|
| | | | |
|
|
.DE
|
|
.LP
|
|
.ft B
|
|
SIEHE AUCH
|
|
.ft R
|
|
.IP
|
|
Teil 2 der Dok. REPORT-GENERATOR
|
|
.RE
|