summaryrefslogtreecommitdiff
path: root/doc/eudas/eudas.ref.8
diff options
context:
space:
mode:
Diffstat (limited to 'doc/eudas/eudas.ref.8')
-rw-r--r--doc/eudas/eudas.ref.8454
1 files changed, 0 insertions, 454 deletions
diff --git a/doc/eudas/eudas.ref.8 b/doc/eudas/eudas.ref.8
deleted file mode 100644
index fc2b3bc..0000000
--- a/doc/eudas/eudas.ref.8
+++ /dev/null
@@ -1,454 +0,0 @@
-#limit (11.0)##pagelength (16.5)##block#
-#start (2.0,0.0)#
-#page (83)#
-#headodd#
-#center#EUDAS#right#%
-
-#end#
-#headeven#
-%#center#EUDAS
-
-#end#
-#center#1
-
-8 Funktionen zur Bearbeitung
-
-
-
-Die Verarbeitungsfunktionen arbeiten jeweils auf der aktuell geöff­
-neten Datei. Falls mindestens ein Satz markiert ist, werden nur
-markierte Sätze bearbeitet, anderenfalls die durch die Suchbedin­
-gung ausgewählten Sätze.
-
-
-8.1 Drucken
-
-Zum Drucken wird ein Druckmuster als Textdatei benötigt. Dessen
-Name muß beim Aufruf der Prozedur 'drucke' angegeben werden.
-Werden beim Übersetzen des Druckmusters Fehler entdeckt, so wird
-der Paralleleditor aufgerufen und kein Druckvorgang durchgeführt.
- Normalerweise sendet der Druckgenerator die Ausgabe direkt
-zum Drucker. Alternativ kann die Ausgabe auch in eine Datei ge­
-schrieben werden. Dieses Verfahren kann mit 'direkt drucken' umge­
-stellt werden. Der Aufruf
-
-
- direkt drucken (TRUE)
-
-
-sendet alle Dateien direkt zum Drucker, mit
-
-
- direkt drucken (FALSE)
-
-
-wird die Ausgabe in Dateien abgelegt. Diese Dateien erhalten Namen
-der Form
-
-
- "Druckmustername.a$n"
-
-
-wobei 'n' eine laufende Nummer zur Unterscheidung ist.
- Soll die Druckausgabe in eine ganz bestimmte Datei geleitet
-werden, so kann vor dem Aufruf von 'drucke' die Prozedur 'druck­
-datei' aufgerufen werden, die als Parameter den Namen der Ausga­
-bedatei erhält. Existiert die Datei noch nicht, wird sie eingerichtet,
-ansonsten wird die Ausgabe am Ende angehängt.
- Die Einstellung der Ausgabedatei gilt nur für einen Druckvor­
-gang und überschreibt für diesen Druckvorgang 'direkt drucken'.
-Beim nächsten Druckvorgang wird wieder die durch 'direkt drucken'
-festgelegte Einstellung verwendet.
- Wenn beim Drucken ein großes Ausgabevolumen anfällt, kann es
-sinnvoll sein, die Ausgabe in mehrere kleine Dateien aufzuteilen.
-Dies gilt auch, wenn direkt gedruckt werden soll, da auch in diesem
-Fall eine Zwischendatei erzeugt werden muß. Die maximale Anzahl
-von Zeilen pro Datei wird durch 'max druckzeilen' angegeben.
- Der dort angegeben Wert gilt nur ungefähr - ein Wechsel der
-Ausgabedatei findet dann statt, wenn die Ausgabedatei nach Bear­
-beitung eines Satzes die Maximalanzahl überschritten hat. In die
-neue Datei wird anschließend zuerst der Initialisierungsteil des
-Druckmusters kopiert, ehe mit der Ausgabe des nächsten Satzes
-fortgefahren wird.
-
-Die Prozeduren im einzelnen:
-
-
-PROC drucke (TEXT CONST druckmuster)
-
- Die aktuell geöffnete Datei wird nach dem angegebenen Druck­
- muster gedruckt.
-
- FEHLER:
-#f1#
- #on("i")#Datei "druckmuster" existiert nicht#off("i")#
- Das angegebene Druckmuster ist nicht vorhanden.
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Zum Drucken muß eine Datei geöffnet sein.
-#f1#
- #on("i")#direkt Drucken nicht möglich#off("i")#
- Es ist kein Druckprogramm installiert oder der Spooler läßt sich
- mit 'print' nicht ansprechen. Der Druck wird abgebrochen, die
- Ausgabedatei ist noch vorhanden.
-
-
-PROC direkt drucken (BOOL CONST ja)
-
- Gibt an, ob die Druckausgaben direkt gedruckt oder in einer
- Datei gesammelt werden sollen.
-
-
-PROC druckdatei (TEXT CONST ausgabedatei)
-
- Leitet die Druckausgabe des nächsten Druckvorgangs in die
- Datei 'ausgabedatei'. Die Einstellung von 'direkt drucken' wird
- für diesen Druckvorgang überschrieben. Die Ausgabe wird am
- Ende der Datei angehängt, falls nötig, wird die Ausgabedatei
- vorher eingerichtet.
-
-
-PROC maxdruckzeilen (INT CONST zeilen)
-
- Stellt die maximale Anzahl von Zeilen für die Ausgabedatei ein.
- Beim Überschreiten dieses Wertes wird eine neue Datei ange­
- fangen. Standardwert ist 4000.
-
-
-TEXT PROC lfd nr
-
- Liefert während des Druckens die laufende Nummer des gerade
- gedruckten Satzes als Text.
-
-
-BOOL PROC gruppenwechsel (INT CONST gruppennr)
-
- Kann innerhalb eines Vor- oder Nachspanns beim Drucken ab­
- gefragt werden, um festzustellen, ob die angegebene Gruppe
- gewechselt und damit den Vor- bzw. Nachspann mitverursacht
- hat (es können zu einem Zeitpunkt mehrere Gruppen wechseln).
- Die Gruppennummer 0 gibt die Standardgruppe an, die nur vor
- dem ersten und nach dem letzten Satz wechselt.
-
-
-8.2 Kopieren
-
-Zum selektiven Kopieren von EUDAS-Dateien wird ein Kopiermuster
-benötigt. Dieses gibt die Zuordnung zwischen Feldern der Ziel- und
-der Quelldatei an. Die Quelldatei ist immer die aktuell geöffnete
-Datei.
- Die Kopierfunktion wird durch 'kopiere' aufgerufen. Parameter
-sind der Name der Zieldatei und das Kopiermuster als FILE. Alter­
-nativ kann statt des Kopiermusters eine Prozedur übergeben wer­
-den, die die Kopieranweisungen erhält.
- Der eigentliche Kopiervorgang wird durch den Operator 'K'
-bewirkt. Dieser erhält den Zielfeldnamen und einen TEXT-Aus­
-druck als Parameter. Der Wert des TEXT-Ausdrucks wird in das
-jeweilige Feld der Zieldatei geschrieben.
- Existiert die Zieldatei noch nicht, so wird sie mit den Feldern
-eingerichtet, die in den einzelnen 'K'-Ausdrücken angegeben sind
-und zwar in der angeführten Reihenfolge. Existiert die Zieldatei, so
-werden gegebenenfalls noch nicht vorhandene Felder am Ende ange­
-fügt.
- Die Prozedur 'std kopiermuster' liefert zu einer gegebenen
-Zieldatei ein Standard-Muster, das als Auswahlgrundlage dienen
-kann. Existiert die Zieldatei nicht, werden alle Felder der Quell­
-datei 1 : 1 kopiert, anderenfalls wird zu jedem Feld der Zieldatei
-ein passendes Feld der Quelldatei gesucht - die Feldreihenfolge
-richtet sich in diesem Fall nach der Zieldatei.
-
-
-PROC kopiere (TEXT CONST dateiname,
- FILE VAR kopiermuster)
-
- Die aktuell geöffnete Datei wird nach den Angaben in 'kopier­
- muster' in die Datei 'dateiname' kopiert. Das Kopiermuster wird
- dem ELAN-Compiler übergeben. Tritt bei der Übersetzung ein
- Fehler auf, wird der Paralleleditor aufgerufen.
-
- FEHLER:
-#f1#
- #on("i")#Datei ist keine EUDAS-Datei#off("i")#
- Zieldatei existiert, ist aber keine EUDAS-Datei.
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Es muß eine virtuelle Datei vorhanden sein.
-
-
-PROC kopiere (TEXT CONST dateiname, PROC kopierfunktion)
-
- Wie oben, nur ist die Kopierfunktion gleich als Prozedur vor­
- handen.
-
- FEHLER:
-#f1#
- #on("i")#Datei ist keine EUDAS-Datei#off("i")#
- Zieldatei existiert, ist aber keine EUDAS-Datei.
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Es muß eine virtuelle Datei vorhanden sein.
-
-
-OP K (TEXT CONST feldname, ausdruck)
-
- Kopiert den Ausdruck in das Feld 'feldname' der Zieldatei.
- Dieses Feld wird eingerichtet, falls es noch nicht existiert.
- Dieser Operator ist nur während eines Kopiervorganges de­
- finiert (also in einem Kopiermuster oder einer Kopierfunktion).
- Er darf nicht in einer IF-Klausel stehen, sondern muß bei
- jedem Satz mit gleichem Feldnamen an der gleichen Stelle auf­
- gerufen werden.
-
-
-PROC std kopiermuster (TEXT CONST dateiname,
- FILE VAR kopiermuster)
-
- Liefert ein Standard-Kopiermuster, abhängig von der Zieldatei
- 'dateiname'. Existiert diese nicht, wird die Quelldatei unverän­
- dert kopiert, ansonsten richtet sich das Kopiermuster nach der
- Zieldatei.
-
-
-8.3 Tragen
-
-Durch Tragen können Sätze komplett in eine Zieldatei transportiert
-werden. In der Quelldatei sind sie anschließend nicht mehr vorhan­
-den. Eine ganze Auswahl von Sätzen kann mit 'trage' transportiert
-werden. 'trage satz' transportiert nur den aktuellen Satz. Mit
-'hole satz' kann der letzte Satz der Zieldatei wieder zurückgeholt
-werden, so daß eine EUDAS-Datei auch als Zwischenspeicher für
-Einzelsätze verwendet werden kann.
- Existiert die Zieldatei bereits, muß sie mindestens so viele
-Felder wie die Quelldatei besitzen, damit keine Informationen ver­
-lorengehen können. Die Feldnamen müssen nicht übereinstimmen.
-Existiert die Zieldatei noch nicht, wird sie mit den Feldern der
-Quelldatei eingerichtet.
- Die Tragefunktion kann um eine gleichzeitige Prüfung erweitert
-werden. Dabei werden Bedingungen überprüft, die bei der Zieldatei
-gespeichert sind. Sätze, die diese Bedingungen verletzen, werden
-nicht getragen. Eine entsprechende Meldung wird in eine Protokoll­
-datei geschrieben, die als Parameter übergeben werden muß.
- Die Prüfbedingungen stehen als ausführbares Programm in den
-Notizen der Zieldatei. Prüfbedingungen können mit mehreren Proze­
-duren formuliert werden. 'pruefe' nimmt eine beliebige Bedingung als
-Parameter und gibt bei Mißerfolg eine Meldung aus. 'wertemenge'
-prüft auf Übereinstimmung mit einem der angegebenen Werte. 'feld­
-maske' legt eine Maske für ein Feld fest, die auf den Inhalt zutref­
-fen muß.
- Mit Hilfe der Prozedur 'eindeutige felder' können Satzduplikate
-erkannt werden. Auch diese werden nicht getragen.
- Die bei den Prüfbedingungen angegebenen Feldnamen müssen in
-der Quelldatei vorhanden sein. Falls eine Prüfprozedur außerhalb
-von 'trage' aufgerufen wird, führt eine Verletzung der Prüfbedin­
-gung zu einem 'errorstop'.
-
-
-PROC trage (TEXT CONST dateiname,
- FILE VAR protokoll, BOOL CONST test)
-
- Alle ausgewählten Sätze werden in die Datei 'dateiname' getra­
- gen. Diese wird gegebenenfalls eingerichtet. Falls 'test' ange­
- geben ist, werden die in den Notizen der Zieldatei enthaltenen
- Bedingungen geprüft. Nur in diesem Fall muß 'protokoll' initial­
- isiert sein.
-
- FEHLER:
-#f1#
- #on("i")#kein Satz zum Tragen vorhanden#off("i")#
- Die Quelldatei ist leer oder es ist keine Datei geöffnet.
-#f1#
- #on("i")#Datei ist keine EUDAS-Datei#off("i")#
- Zieldatei existiert, ist aber keine EUDAS-Datei.
-#f1#
- #on("i")#Zieldatei hat falsche Felderzahl#off("i")#
- Zu wenig Felder in der Zieldatei.
-
-
-PROC trage satz (TEXT CONST dateiname)
-
- Der aktuelle Satz wird in die Datei 'dateiname' getragen.
-
- FEHLER:
-#f1#
- #on("i")#kein Satz zum Tragen vorhanden#off("i")#
- Keine Datei geöffnet oder Datei ist am Ende.
-#f1#
- #on("i")#Datei ist keine EUDAS-Datei#off("i")#
- Zieldatei existiert, ist aber keine EUDAS-Datei.
-#f1#
- #on("i")#Zieldatei hat falsche Felderzahl#off("i")#
- Zu wenig Felder in der Zieldatei.
-
-
-PROC pruefe (TEXT CONST feldname, BOOL CONST bedingung)
-
- Wenn die angegebene Bedingung FALSE liefert, wird eine Mel­
- dung in die Protokolldatei geschrieben und der jeweilige Satz
- nicht getragen.
-
-
-PROC wertemenge (TEXT CONST feldname. menge)
-
- Es wird geprüft, ob das angegebene Feld in der Wertemenge
- enthalten ist. Die einzelnen Werte in der Wertemenge werden
- dabei durch Komma getrennt. Leerzeichen sind signifikant.
-
-
-PROC feldmaske (TEXT CONST feldname, maske)
-
- Es wird geprüft, ob das angegebene Feld zu der Maske paßt. Die
- Zeichen in der Maske haben dabei folgende Bedeutung:
- '9' trifft auf jede Ziffer zu
- 'X' trifft auf jedes Zeichen zu
- 'A' trifft auf jeden Großbuchstaben zu (einschließlich
- Umlaute)
- 'a' trifft auf jeden Kleinbuchstaben zu (einschließlich
- Umlaute und 'ß')
- '*' trifft auf eine Folge beliebiger Zeichen zu (auch die
- leere Folge). Eine sparsame Verwendung wird empfoh­
- len, da die Bearbeitung sehr aufwendig ist.
- Alle anderen Zeichen treffen nur auf ein gleiches Zeichen zu.
-
-
-PROC eindeutige felder (INT CONST anzahl)
-
- Gibt an, die wieviel ersten Felder einen Satz eindeutig identifi­
- zieren sollen. Ein Satz, der mit einem Satz der Datei in diesen
- Feldern übereinstimmt, wird nicht getragen. Ohne diese Angabe
- wird keine derartige Prüfung vorgenommen.
-
-
-PROC hole satz (TEXT CONST dateiname)
-
- Holt den letzten Satz der angegebenen Datei und fügt ihn vor
- dem aktuellen Satz ein.
-
- FEHLER:
-#f1#
- #on("i")#"dateiname" existiert nicht#off("i")#
-#f1#
- #on("i")#Datei ist keine EUDAS-Datei#off("i")#
- Zieldatei existiert, ist aber keine EUDAS-Datei.
-#f1#
- #on("i")#Zieldatei hat falsche Felderzahl#off("i")#
- Zu viele Felder in der angegebenen Datei.
-#f1#
- #on("i")#Kein Satz zum Tragen vorhanden#off("i")#
- Die angegebene Datei ist leer.
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Es muß eine virtuelle Datei vorhanden sein.
-
-
-8.4 Verarbeitung
-
-Die ausgewählten Sätze der aktuellen Datei können nach einer
-Verarbeitungsvorschrift verändert oder geprüft werden. Dies ge­
-schieht durch die Prozedur 'verarbeite'. Als Parameter kann ent­
-weder ein Verarbeitungsmuster als FILE oder die Verarbeitungs­
-funktion direkt als Prozedur übergeben werden.
- Die Vorschrift wird durch den Operator 'V' realisiert.
-
-
-PROC verarbeite (FILE VAR verarbeitungsmuster)
-
- Die aktuelle Datei wird nach dem angegebenen Muster bearbei­
- tet. Enthält die Vorschrift, die dem ELAN-Compiler übergeben
- wird, einen Fehler, wird der Paralleleditor aufgerufen.
-
- FEHLER:
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Es muß eine virtuelle Datei vorhanden sein.
-
-
-PROC verarbeite (PROC verarbeitungsfunktion)
-
- Wie oben, nur wird die Vorschrift direkt als Prozedur überge­
- ben.
-
- FEHLER:
-#f1#
- #on("i")#keine Datei geoeffnet#off("i")#
- Es muß eine virtuelle Datei vorhanden sein.
-
-
-OP V (TEXT CONST feldname, ausdruck)
-
- Das angegebene Feld des aktuellen Satzes wird durch den Aus­
- druck ersetzt.
-
- FEHLER:
-#f1#
- #on("i")#Das Feld "feldname" ist nicht definiert.#off("i")#
- Das angegebene Feld ist nicht vorhanden.
-
-
-8.5 Funktionen in Ausdrücken
-
-Für Ausdrücke bei den in diesem Kapitel beschriebenen Prozeduren
-sind einfache Funktionen zur Abfrage von Feldinhalten vorhanden.
-Mit 'f' kann der Inhalt eines benannten Feldes erfragt werden, bei
-'wert' wird der Inhalt erst in eine REAL-Zahl umgewandelt, wobei
-nichtnumerische Zeichen ignoriert werden.
- Die Prozedur 'textdarstellung' kann dazu verwendet werden,
-den Wert einer TEXT-Variablen als TEXT-Denoter in ELAN-Syntax
-darzustellen.
- Die Prozedur 'zahltext' kann dazu verwendet werden, aus einer
-REAL-Zahl einen mit der richtigen Zahl von Nachkommastellen ver­
-sehenen, variabel langen Text zu machen.
-
-
-TEXT PROC f (TEXT CONST feldname)
-
- Liefert den Inhalt des angegebenen Feldes.
-
- FEHLER:
-#f1#
- #on("i")#Das Feld "feldname" ist nicht definiert.#off("i")#
-
-
-REAL PROC wert (TEXT CONST feldname)
-
- Liefert den Inhalt des angegebenen Feldes als REAL. Dabei
- werden nichtnumerische Zeichen ignoriert, ausgenommen das
- Minuszeichen und das eingestellte Dezimalkomma (s. 'dezimal­
- komma'). Tritt kein numerisches Zeichen auf, wird der Wert 0.0
- geliefert.
-
- FEHLER:
-#f1#
- #on("i")#Das Feld "feldname" ist nicht definiert.#off("i")#
-
-
-REAL PROC wert (TEXT CONST feldname, INT CONST kommastellen)
-
- Wie 'wert' mit einem Parameter, nur daß das Ergebnis auf die
- angegebene Anzahl von Nachkommastellen gerundet wird.
-
- FEHLER:
-#f1#
- #on("i")#Das Feld "feldname" ist nicht definiert.#off("i")#
-
-
-TEXT PROC textdarstellung (TEXT CONST anzeigetext)
-
- Liefert 'anzeigetext' als TEXT-Denoter, also in Anführungs­
- strichen. Anführungsstriche im Text werden dabei verdoppelt.
- Steuerzeichen von 0 bis 31 werden in lesbare Form gebracht.
-
-
-TEXT PROC zahltext (REAL CONST wert, INT CONST kommastellen)
-
- Liefert den Text des angegebenen Werts mit dem eingestellten
- Dezimalkomma und mit der angegebenen Zahl von Nachkomma­
- stellen. Sind die Kommastellen 0, wird auch das Komma unter­
- drückt. Der Text erhält soviel Stellen, wie zur Darstellung
- benötigt werden.
-
-
-TEXT PROC zahltext (TEXT CONST feldname,
- INT CONST kommastellen)
-
- Wirkt wie 'zahltext (wert (feldname), kommastellen)'.
-