allegro-C Logo

allegro-Exportparameter

1. Allgemeines Schema einer Export-Parameterdatei

Man kann eine solche Datei (Typ .APR, APT oder .API) grob in vier wichtige Teile gliedern. Das Handbuch, auf dessen Kapitel hier verwiesen wird, erschwert leider den Überblick durch seinen Umfang und die sehr detaillierte Gliederung.

Bei jedem Teil sind auf der linken Seite nur einige typische Zeilen als Beispiele angegeben.

Die tatsächliche Reihenfolge der Teile und ihrer einzelnen Zeilen hat keine Auswirkung auf die Ausführung! Nur innerhalb des Teils 3, der Kategorieliste, kommt es auf die Reihenfolge an. Ansonsten gilt, wenn ein Befehl mehrfach vorkommt, nur der letzte.

1. Teil : Grundwerte, Konstanten (Handbuch Kap. 10.2.0-5)

zl=72
zi=5
am=8
In diesem Abschnitt werden Werte festgelegt, die von allgemeiner Bedeutung für den gewünschten Exportvorgang sind und die nichts mit einzelnen Kategorien zu tun haben. Z.B. zl=72 besagt "Zeilenlänge 72 Zeichen"

1=". "
2=" ; " t99
24=C "Ort: "
Die sog. "Zwischenteile" können Interpunktionen und andere Konstanten enthalten, die man in der Kategorieliste verwenden kann, um sie zwischen die Kategorietexte einzustreuen. Die bis zu 99 Zwischenteile können auch Steuerzeichen für die Aufbereitung enthalten (z.B. C = Zeilenvorschub), aber auch für Druckattribute (t99 = fett ein, t98=fett aus) sowie für Bildschirmfarben (t71 = rot, t77 = weiß) und andere Zwecke.

2. Teil : Kopfbefehle (Handbuch Kap. 10.2.1.2)

ak=4..+A 20+B 90.+C
ak=31s"; "+D
ak=22/40+E
Diese sehr wichtigen Befehle legen fest, aus welchen Kategorien Eintragungen erzeugt werden sollen, falls sie vorkommen.

Wenn die Aufgabe etwa ein Kartendruck ist, wird es sich um diejenigen Kategorien handeln, die für Kartenköpfe benötigt werden - daher der Name "Kopfbefehle".

Wenn die Aufgabe aber z.B. eine Indexproduktion ist (Dateityp .API), werden es die Kategorien sein, aus denen Indexeinträge zu machen sind.

Die Buchstaben hinter dem '+' weisen auf "Sprungmarken" in der Kategorieliste (Teil 3): sie legen fest, wo die spezifische Bearbeitung der Kopfkategorie beginnen soll; z.B. bedeutet ak=4..+A soviel wie: nimm jede Kategorie der Gruppe #4 und beginne jeweils mit der Verarbeitung bei der Sprungmarke #-A in der Kategorieliste.

Durch die Angabe von Trennzeichen (z.B. "; ") kann man bewirken, daß eine Kategorie an bestimmten Stellen auseinandergenommen und somit zu mehreren Einträgen verarbeitet wird.

Wenn für jeden Datensatz nur genau ein Exportsatz entstehen soll (was z.B. bei einer Parameterdatei der Fall ist, die nur für die Bildschirmanzeige zuständig ist), braucht man keine Kopfbefehle!

Die Kopfbefehle selbst bewirken noch keine Ausgabe, sie veranlassen nur die Auswahl (und evtl. Zerlegung) von Kategorien und steuern mit dem Sprungbefehl, bei welcher Sprungmarke die Verarbeitung beginnt.

Der genaue Ablauf ist dieser: (==> Handbuch Kap.10.2.6, dort auch Hinweise auf Verarbeitung von Untersätzen!)

3. Teil : Kategorieliste (= Anweisungsteil) (Handbuch Kap.10.2.6)

Dieser Teil ist praktisch der Hauptteil: nur er enthält Anweisungen, die tatsächlich eine Ausgabe bewirken. Die anderen Teile regeln nur die Rahmenbedingungen, z.B. Zeilenlänge (==> 1.) oder Zeichenumwandlung (==> 4.)

Die Anweisungszeilen werden von oben nach unten abgearbeitet. Der Anfangspunkt wird für jeden ak-Befehl durch seine Sprungmarke bestimmt. Abweichungen von der Reihenfolge lassen sich durch Sprungbefehle programmieren.

#-A             Im Prinzip ist die Kategorieliste eine Auflistung derjenigen Kategorien, die

!u1 99 P":" #zz 98     ausgegeben werden sollen. Jede Kategorie kann aber mit etlichen Befehlen

#20 e" : " P". "  (sog. "Manipulationsbefehlen" ==> 7.) vorbehandelt werden. Ferner gibt

#+h             es Bedingungsprüfungen und Sprungbefehle, die den Ablauf steuern.

#-B             Wegen der zahlreichen Möglichkeiten, die sich zudem freizügig kombinieren

#u1 +h p99 E50 P98     lassen, ist dieser Teil der schwierigste des Exportsystems.

#76 p" (" P")"  Die Zeilen beginnen alle mit '#' oder '!' (siehe 4. Teil): wenn es '#' ist,

#+h             werden zur Umcodierung die p-Befehle benutzt, wenn '!', dann die q-Befehle.

#....           Zur allgemeinen Form der Exportbefehle folgen nähere Erläuterungen auf der

#-h             nächsten Seite.

#....

Zwischen den Anweisungszeilen, die sich jeweils auf eine Kategorie beziehen, können verschiedene Steuerbefehle stehen. Diese beginnen ebenfalls alle mit dem Zeichen '#'.

Die wichtigsten Steuerbefehle sind: (==> Handbuch Kap. 10.2.6.4.)

#+M
Sprungbefehle; wenn diese Zeile erreicht wird, geht es anschließend mit der auf die Sprungmarke #- M folgenden Zeile weiter:

#-M
Sprungmarken (Rücksprünge sind möglich. Achtung: Wenn #-M mehrfach vorkommt, wird nur die erste wirksam, da das Programm immer von oben danach sucht, exakt: vom Anfang der Kategorieliste her, nicht vom Sprungbefehl aus!)

#+#
Ende: der Ausgabesatz ist fertig. Weiter geht es mit dem nächsten ak-Element.

#+-
Abbruch: wenn dieser Punkt erreicht wird, unterbleibt die Ausgabe.

(Achtung Nebeneffekt: wenn der Parameter as oder ab definiert wurde, dann werden diese Werte trotzdem ausgegeben.)

#tz
Zwischenteil Nummer z hier in die laufende Ausgabe einfügen

#t{ CS }
die Steuerzeichenkette CS hier einfügen (==> 10.2.0)

#ik,x A
Indikator-Aktion: wenn das Zeichen Nummer k der zuletzt benutzten Kategorie das Zeichen x ist, wird Aktion A ausgeführt (A = Nummer eines Zwischenteils oder Unterprogramm-Aufruf der Form >P ). (Die Numerierung der Zeichen beginnt mit 1 für die erste Ziffer der Kategorienummer, d.h. das Zeichen hinter '#').

#>P
Unterprogramm P ausführen

#(P
Anfang des Unterprogramms P

#)P
Ende des Unterprogramms P (ein UP kann mehrere Endpunkte haben)

#<..
Schaltbefehle: etwas für Export-Experten. Unterschiedliche Arten von Verknüpfungen zwischen Datensätzen und sogar zwischen verschiedenen Datenbanken können mit Hilfe der Nachlade- und Schaltbefehle programmiert werden (==> 7.).

4. Teil : Codierungsbefehle (Handbuch Kap.10.2.4)

q a/z A
Es kann sein, daß bestimmte Zeichen durch andere ersetzt oder auch

q ä "ae"
weggelassen werden sollen. Dies steuert man mit den p- und q-Befehlen. Die p-Befehle wirken auf die mit '#' beginnenden Zeilen der Kategorieliste,

p ¬ 1
die q-Befehle auf die mit '!' beginnenden Zeilen. Der Code 1 bedeutet: Zeichen weglassen!

2. Struktur einer Anweisung

Die Kategorieliste als Hauptteil einer Parameterdatei besteht im Prinzip, wie gesagt, einfach aus einer Auflistung der Kategorien, die ausgegeben werden sollen, in der gewünschten Reihenfolge.

Man kann eine neue Parameterdatei immer so beginnen, daß man die auszugebenden Kategorien untereinander aufschreibt. Jede Zeile stellt dann die Anweisung dar, die genannte Kategorie auszugeben. Damit würde der Export schon funktionieren, aber die Kategorietexte würden dann ohne Punkt und Komma aufeinander folgen, denn kein Programm könnte sich selber eine sinnvolle Interpunktion ausdenken.

Man muß also auf irgendeine Weise für jede auszugebende Kategorie festlegen können, ob etwas davor und/oder dahinter zu schreiben ist (und was), und auch: ob etwa nur ein bestimmter Teil des Kategorietextes auszugeben ist (und welcher), oder ob und wie das Vorhandensein einer Kategorie oder eines Bestandteils innerhalb des Kategorietextes den Ablauf beeinflussen soll, ob einzelne Zeichen oder Bestandteile durch andere Dinge zu ersetzen sind, usw. usf.

Nun wird etwas genauer erläutert, wie eine Anweisung, also eine Zeile der Kategorieliste (Teil 3), aufgebaut ist, d.h. aus welchen Teilen sie bestehen kann. (Im einfachsten Fall, wie gesagt, ist es nur eine Kategorienummer.)

Die allgemeine Form ("Syntax") einer Anweisung ist diese: (==> Handbuch Kap. 10.2.6)

Kxx[f] [BS] [MB] [BPf] (Zwischen den Bestandteilen jeweils genau ein Leerzeichen!)

Die eckig geklammerten Teile können (einzeln oder alle) entfallen, nur die jeweils benötigten sind anzugeben. Die Bestandteile haben folgende Bedeutung und Funktion (man vergleiche dazu die Beispiele im Abschnitt 3 oben):

K
Dies ist entweder ein '#' oder ein '!' , je nach der gewünschten Umcodierung (==> Teil 4). (Bei '#' werden die p-Befehle, bei '!' die q-Befehle ausgeführt)

xx
die Kategorienummer. Es gibt außer den eigentlichen Kategorien auch eine Anzahl Sonderkategorien, die man benutzen kann. Z.B. ist #u1 der Text, der durch einen ak-Befehl ausgewählt wurde (==> Teil 2), oder #dt ist das Tagesdatum in deutscher Form, #op der Bearbeitercode, ...

f
das Folgezeichen der Kategorienummer (es entfällt bei einem 2stelligen Kategoriesystem wie A.CFG, wenn es keine Wiederholungskategorie ist; bei dreistelligem Schema ist f die dritte Stelle)

BS
Der Bedingte Sprung in der Form +M oder +#kkf : wenn die Kategoriezeile ausführbar ist (d.h. die Kategorie existiert und die anschließenden Manipulationsbefehle sind ausführbar), dann wird im Anschluß an die Ausgabe des Inhalts von #xxf zur Sprungmarke #-M bzw. zur Kategorie #kkf gegangen.

Ist aber der Manipulationsbefehl nicht ausführbar, so produziert die gesamte Zeile kein Ergebnis und der bedingte Sprung wird ignoriert, d.h. es geht mit der nächsten Zeile weiter

MB
Manipulationsbefehle. Es kann ein einzelner Befehl hier stehen, oder auch keiner oder eine ganze Kette solcher Befehle, getrennt durch jeweils genau ein Leerzeichen. (Aufgepaßt: 2 Leerzeichen hintereinander bewirken, daß der Rest der Zeile als Kommentar angesehen und ignoriert wird!)

Diese hier möglichen etwa 40 Befehle bilden den umfangreichsten Teil des Exportsystems und erfüllen die oben angedeuteten Detailaufgaben. Die Auflistung im Abschnitt 7 erklärt jeden einzelnen Befehl anhand von Beispielen.

BPf
Die Bedingten Postfixe (nur selten notwendig) ermöglichen es, die Interpunktion so zu regeln, daß das Vorhandensein oder die Abwesenheit von Kategorien eine unterschiedliche Darstellung auslösen kann.

Beispiel:

#20 0 #59 7 #zz 0     (die 0 bewirkt nichts, muß aber sein: BPf darf nicht

#40 0 #59 8 #zz 0   direkt auf die Kategorienummer folgen)

#41 0

#74 p". - "

#75 p": "

#76 p", "

#77 p". - "

Bedeutung: Wenn ein Personenname (#40 oder #41 oder beide) vorhanden ist, soll nach dem Titel die Kombination " / " (definiert als Zwischenteil 7=" / ") ausgegeben werden, wenn beide fehlen, entfällt natürlich der Schrägstrich (#zz 0 bewirkt das). Wenn beide vorhanden sind, soll nur vor dem ersten der Schrägstrich erscheinen, vor den zweiten kommt Zwischenteil 8=" ; "). Genau diese Situation läßt sich nur mit den bedingten Postfixen lösen.

Ansonsten sollte man versuchen, auf die bedingten Postfixe zu verzichten, da sie den Ablauf unübersichtlich machen.

3. Wie wird eine Anweisung durchgeführt?

Das Handbuch erklärt im Detail, wie eine Anweisungszeile abgearbeitet wird (==> Handbuch Kap. 10.2.6).

Hier folgt eine knappe, aber doch vollständige Beschreibung:

Wenn man eine Parameterdatei der einfachsten Form hat, also eine schlichte Auflistung der auszugebenden Kategorien, zeilenweise untereinander geschrieben, kommen nur die mit (*) markierten Zeilen zur Ausführung.

Diesen Ablauf macht man sich am besten zunächst immer wieder an konkreten Beispielen bewußt, bis man die ganze Logik "verinnerlicht" hat.

Die Exportsprache hat eine sehr knappe und mit bekannten Programmiersprachen kaum vergleichbare Struktur, die auf schnelle Verarbeitung ausgerichtet ist. Die Effizienz ist besonders wichtig für die Indexierung, die ja ebenfalls mit dieser Sprache programmiert wird.

Eine Anmerkung der Entwickler: Viele Anwender empfinden das Erlernen dieser Sprache und das Arbeiten mit ihr äußerst schwierig, das soll hier nicht verheimlicht werden. Geschätzt wird sie aber von Experten wegen ihrer Flexibilität und Leistungsfähigkeit. Diese Eigenschaften mit hoher Benutzerfreundlichkeit zu verbinden, das ist auch bei den gängigen Programmiersprachen ein Kardinalproblem.

4. Die 10 Typen von Exporten

Exportprodukte und die zugehörigen Parameterdateien lassen sich in folgende 7 Typen einteilen:



   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  Typ      |  Produkt                                                                               |  Beispiele|

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  DISPLAY  |  Bildschirmanzeigen, Katalogkarten. D-1.APR wird von PRESTO standardmäßig für die      |  D-0.APR  |

   |           |  Anzeige geladen, wenn es nicht existiert, wird P1.APR genommen.                       |  P1.APR   |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  PRINT    |  Ausdrucke mit Seitenumbruch, Literaturlisten, gedruckte Kataloge. Geeignet zum        |  P-*.APR  |

   |           |  Ausdruck von sortierten Dateien (Vorbereitung mit einer Datei vom Typ SORT)           |  P2.APR   |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  INTERN   |  Selektierte Teilmengen (downloads) zum Aufbau neuer allegro-Datenbanken oder zum      |  I-0.APR  |

   |           |  Einmischen in andere. Ausgabedatei vom Typ .cLG (Grunddatei)                          |  PA.APR   |

   |  FORM     |  Formularähnliche Ausdrucke, z.B. Bestellzettel                                        |  F-0.APR  |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  SORT     |  sortierfähig aufbereitete Dateien, die anschließend mit ASORT sortiert und dann mit   |  S-*.APR  |

   |           |  SRCH nochmals z.B. als gedruckte Liste (Typ PRINT) exportiert werden können. Ausgabe  |  PS.APR   |

   |           |  erfolgt ebenfalls im  allegro-Internformat (Typ .ALG), aber jede Aufnahme beginnt     |           |

   |           |  mit einem Sortierbegriff in Sonderkategorie #u1                                       |           |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  EXTERN   |  Dateien in anderen Formaten für Anwendungen außerhalb der allegro-Umgebung (z.B.      |  E-0.APR  |

   |           |  Weiterbearbeitung mit Textsystemen oder sonstiger Software oder Übermittlung an       |  PK.APR   |

   |           |  andere Katalogsysteme.                                                                |           |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  RESULT   |  Rechenergebnisse, Auswertungen von Dateien oder Ergebnismengen; ausbaufähig bis hin   |  R-0.APR  |

   |           |  zu tabellarischen Auswertungen                                                        |           |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  ALPHA    |  Alphabetisches Register ausgewählter Kategorien, meist in Verbindung mit einer        |  A-0.APR  |

   |           |  Listenproduktion (Typ PRINT). Erstellt wird eine sortierfähige Datei. Nach dem        |           |

   |           |  Sortieren mit ASORT übernehmen ALPHA2.APR und ALPHA3.APR (die beide unabhängig von    |  ALPHA2   |

   |           |  der Konfiguraaion sind)  die Druckaufbereitung.                                       |  ALPHA3   |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  COUNT    |  Ermittlung der Häufigkeit von Kategorieinhalten, z.B. Liste der vergebenen            |  C-0.APR  |

   |           |  Schlagwörter mit Anzahl der Aufnahmen. Erstellt wird eine sortierfähige Datei. Nach   |           |

   |           |  dem Sortieren mit ASORT übernimmt COUNT2.APR die Druckaufbereitung.                   |  COUNT2   |

   +-----------+----------------------------------------------------------------------------------------+-----------+

   |  INDX     |  Sonderfall : Suchschlüssel, die in den Index einer Datenbank einzuordnen sind. Auch   |  CAT.API  |

   |           |  dafür ist die Exportsprache zuständig!                                                |           |

   +-----------+----------------------------------------------------------------------------------------+-----------+

    

Vorschlag: geben Sie Ihren Parameterdateien Namen, die mit dem Typbuchstaben und Bindestrich anfangen: eine Datei vom Typ EXTERN erhält einen Namen, der mit "E-" beginnt. E-0.APR ist der Prototyp dafür.

CockPit unterstützt bereits die Typen SORT und PRINT. Im Menü "Optionen" kann man je eine der vorhandenen Dateien S-*.APR und P-*.APR auswählen. Diese wird dann umkopiert auf den Namen SORT.APR bzw. PRINT.APR und bei einer nachfolgenden Listenproduktion über Menü "Routinen/exportieren" benutzt. Die Unterstützung dieser Typologie durch das CockPit wird weiterentwickelt, so daß Exportproduktionen einfacher werden.

Wenn Sie darangehen, eine eigene Export-Parameterdatei zu erstellen, können Sie sich in der Regel an eins der genannten Beispiele anlehnen. Stellen Sie also zunächst fest, zu welchem Typ Ihr Vorhaben gehört, nehmen Sie dann die zuge- hörige, oben genannte Parameterdatei als Muster (-> Handbuch 10.1, 10.4) und wählen einen geeigneten Namen.

Im Lehrbuch finden sie die kommentierten Prototypen abgedruckt. (Sie sind aber auch auf der normalen Lieferdiskette, d.h. Sie können sich auch selbst diese Dateien ausdrucken.) Diese Prototypen haben die Namen D-0.APR, P-0.APR usw. So kann man sie auch bei der Auswahl per CockPit immer sofort finden, sie stehen nämlich in ihrer jeweiligen Gruppe zwangsläufig ganz oben. Wenn die Auswahlliste erscheint und man drückt einfach nur 's' - schon erscheint die Gruppe der Dateien vom Typ Sort, und der Leuchtbalken steht auf S-0.APR. <Enter> betätigen, und man hat die Wahl, diese Datei anzusehen, zu bearbeiten, oder eine eigene Version als Kopie davon zu erstellen.

5. So macht man eine neue Parameterdatei

Führen Sie vom CockPit aus die hier angegebenen Schritte hintereinander aus, dann haben Sie ein einfaches Beispiel für eine neue Parameterdatei - hier vom Typ Extern -, die aber auch für die Bildschirmanzeige verwendbar ist.

  1. µd e <umschalten> E-0.APR anwählen <Enter> n e-simpel <Enter> (D.h.: Menü d=Dateien wählen, Punkt e=Export-Parameter, umschalten auf das Programmverz., E-0.APR aus der Liste auswählen, n=neue Version erstellen, e- simpel als neuen Namen eingeben.)

    Die Parameterdatei E-0.APR vom Programmverzeichnis wird genommen, eine Kopie unter dem Namen E-SIMPEL.APR wird gemacht und diese zur Bearbeitung vorgelegt.

    [Man wählt statt dessen z.B. D-0.APR, wenn man eine neue Anzeige-Parameterdatei machen will.]

  2. Jetzt ändern wir den vorgefundenen Text wie folgt ab: (die Kommentare kann man weglassen; jeder Text, dem mindestens zwei Leerzeichen vorausgehen, ist ein Kommentar, d.h. wird vom Programm ignoriert).

    Die fett gedruckten Teile stellen die Änderungen dar, wobei die Kommentare nicht berücksichtigt sind.

        Ausgabe mit Feldbenennungen und Einrückung von Folgezeilen 
    
    pn="Export mit Feldbenennungen"
    
          --------------------- Grundparameter --------------------
    
    zl=72           Zeilenlänge
    
    zi=11           11 Zeichen Einrückung bei Folgezeilen
    
    zm=0    kein Seitenumbruch
    
    
    
    ae=13 10    1 Zeilenvorschub am Aufnahme-Ende
    
    
    
    fl=0 fortlaufende Ausgabe (kein Karten- oder Seitenumbruch)
    
    
    
    ks=4 Startpos. 4  (= erstes Textzeichen, d.h. Kategorienummer wird nicht mit abgedruckt; ks=0 setzen, wenn mit Kategorienummer gedruckt werden
    
                soll)
    
    
    
    ke=C &0     Kategorie-Ende: C = Zeilenvorschub, &0 = Sprung  auf Zeilenanfang
    
    
    
          --------------------- Kategorieliste --------------------
    
    
    
        Wenn man die Breite der Feldbezeichnungen ändert, sollte man auch die
    
        Einrückung (zi=11, siehe oben) anpassen
    
    #20 "Titel:     "           wenn die Zeile länger wird als 72 Zeichen, wird sie umgebrochen, dann erfolgt Einrückung um 11
    
                                       Zeichen!
    
    #40 "Verfasser: "           beginnt auf neuer Zeile, denn ke wird ausgeführt
    
    #74 "Ersch.Ort: " #zz 0          (hier soll ke entfallen: #zz 0 heißt "kein Postfix")
    
    #76 ": "                         (#76 wird hierdurch mit ": " an #74 angehängt)
    
    #75 "Verlag:    "           Die nächsten drei Zeilen beginnen wegen des
    
    #87 "ISBN:      "           automatisch ausgeführten ke-Befehls jeweils wieder auf
    
    #90 "Signatur:  "           neuer Zeile und am Zeilenanfang
    
    

  3. Mit <Esc> q s die Datei speichern. Jetzt haben wir eine Parameterdatei namens E-SIMPEL.APR, die uns eine einfache Bildschirmanzeige liefern wird. Zum Testen:

  4. Per µr b die Beispieldatenbank benutzen. Von einer beliebigen Titelanzeige aus dann dieses ausführen:

    F2 F2 F2 [Liste der .APR-Dateien erscheint] '+' vor E-SIMPEL.APR setzen, <Enter>

    Anschließend sieht sofort die Titelanzeige ganz anders aus als vorher, nämlich nun so, wie es die neue Parameter- datei E-SIMPEL.APR vorschreibt.

    (Siehe auch die Bemerkungen zum Testen von Parameterdateien im nächsten Abschnitt.)

6. So testet man Parameterdateien

Auf der Lieferdiskette finden Sie 10 vollständige und kommentierte Beispiele von Parameterdateien der einzelnen Typen, und zwar: D-0.APR zum Typ Display, P-0.APR zum Typ Print, usw. Wenn Sie diese oder andere ausprobieren und/oder anpassen wollen, verfahren Sie am besten nach den folgenden Hinweisen.

So testet man eine Export-Parameterdatei:

  1. Nehmen wir an, die zu testende Datei XYZ.APR befindet sich auf dem Programmverzeichnis. Es wird vom CockPit aus gestartet und die Datenbank KAT auf C:\ALLEGRO\KATALOG benutzt.

  2. Beliebigen Datensatz aufblättern, auf dem ANZEIGEbildschirm F2 F2 F2 drücken. Dann hat man die Auswahlliste der Paramterdateien vor sich, die auf dem Programmverzeichnis stehen.

  3. Die Datei XYZ.APR mit '+' markieren, <Enter> drücken: jetzt wird sie geladen und sofort als Anzeige- Parameterdatei benutzt, auch wenn sie gar nicht für eine Bildschirmanzeige gedacht ist! D.h. der aktuelle Datensatz wird gleich mit Hilfe dieser Parameterdatei aufbereitet und neu angezeigt. (Wenn nicht: in DEFAULT.OPT ist im Abschnitt für PRESTO eine Eintragung für eine Druck-Parameterdatei vorhanden; diese Zeile beginnt mit q und entspricht der Aufruf-Option -q von PRESTO. Man macht die q-Zeile ungültig, dann geht es.)

  4. Verschiedene Arten von Datensätzen aufsuchen und die Anzeigeform begutachten. Abweichungen von der gewünschten Form notieren.

  5. Zum CockPit zurück, dann über µd e die getestete Datei wieder anwählen und bearbeiten. Änderungen ausführen. Zurück zur Datenbankbenutzung ==> 1.

Für Experten: die "Allers'sche Testschleife"

Dies ist eine noch schnellere und sehr elegante Testmethode, benannt nach ihrem Erfinder Heinrich Allers von der UB Oldenburg.

Man stellt eine Batchdatei TESTAPR.BAT nach folgendem Schema zusammen:

:START                Testschleife für Kontrolle am Bildschirm

presto -f1 -a3 -n1 -S -dC:\ALLEGRO\KATALOG -p %1

pause

x %1.APR

goto START

und gibt dann den Befehl testapr xyz

In dieser schlichten Endlosschleife wird jeweils die Datenbank gestartet, und zwar mit XYZ.APR als Anzeige-Parameterdatei (statt der standardmäßigen P1.APR), so daß man diese dann gar nicht erst mit F2 ... laden muß. Verläßt man die Datenbank, wird der Editor aufgerufen, um die Parameterdatei sofort wieder bearbeiten zu können. Der Befehl pause ermöglicht einen Abbruch der Endlosschleife mit Ctrl+c.

Wenn man in den EDITORzustand geht, kann man mit Befehl #a die Anwendervariablen kontrollieren.

Die Testschleife läßt sich universell für alle .APR-Dateien verwenden. Der Aufruf testapr abc ermöglicht jederzeit den Test jeder beliebigen ABC.APR-Datei.

Soll der Test mit SRCH laufen, ersetzt man den PRESTO-Aufruf durch einen SRCH-Aufruf:

:START                       Testschleife für Listenproduktion

srch -f4 -n1 -dC:\ALLEGRO\KATALOG -e %1/testlist -s0 -m0 -v0

v testlist               (Ergebnisdatei testlist anzeigen)

pause

x %1.APR

goto START

Durch v testlist wird dann die Ergebnisdatei angezeigt, bevor man wieder in die Bearbeitung der Parameterdatei kommt. Ein Trick: mit Druck auf 'x' kann man jederzeit den SRCH-Lauf abbrechen. Man kommt in den EDITOR und kann sich die zuletzt geladene Aufnahme ansehen. Mit Befehl #Da sieht man das Exportergebnis auf dem Bildschirm. Mit dem Befehl #a kann man evtl. vorhandene Anwendervariablen kontrollieren, die von den Exportparametern erzeugt werden! Mit #e bricht man den SRCH-Lauf ab und die Schleife geht weiter.

So testet man eine Index-Parameterdatei:

Das ist sehr einfach; man braucht auf keinen Fall erst neu zu indexieren, sondern:

  1. Nehmen wir an, ABC.API liegt auf dem Programmverzeichnis und soll getestet werden. Die aktuelle Parameterdatei unserer Datenbank heißt KAT.API (d.h. wir haben eine Datenbank namens KAT) und liegt auf dem Verzeichnis C:\ALLEGRO\KATALOG.

  2. KAT.API umbenennen z.B. in KAT.XXX, ABC.API umbenennen in KAT.API. Anschließend "denkt" dann PRESTO, dieses sei die richtige Index-Parameterdatei und benutzt sie.

  3. Datenbank starten, Datensätze aufblättern, jeweils <F7> drücken. Dann sieht man die Liste der durch ABC.API erzeugten Schlüssel. Abweichungen von der gewünschten Form notieren.

  4. Zum CockPit zurück, dann über µd i die getestete Datei wieder anwählen und bearbeiten. Änderungen ausführen. Zurück zur Datenbankbenutzung ==> 2.

Auch hier kann man sich eine "Allers'sche Testschleife" TESTAPI.BAT anlegen:

:START

presto -f1 -a3 -n1 -S -dC:\ALLEGRO\KATALOG   (Datenbank wird aufgerufen, Test mit F7)

pause

x KAT.API              (Parameterdatei bearbeiten)

goto START

Dieses kleine Programm schaltet ständig zwischen der Benutzung der Datenbank und der Bearbeitung der KAT.API hin und her. Man steigt aus der Schleife aus, indem man nach Verlassen der Datenbank <Strg+c> drückt.

Man muß auch hierfür vorher die Parameterdateien umbenennen, wie oben unter 1. beschrieben, denn PRESTO setzt voraus, daß der Name der Index-Parameterdatei identisch mit dem der Datenbank ist. Meistens wird man aber Veränderungen an der schon existierenden Parameterdatei einer Datenbank testen wollen, und dann entfällt dieser Schritt.

Zum Verständnis der Beispiel-Parameterdateien hier noch ein paar Hinweise:





© Universitätsbibliothek Braunschweig, Bernhard Eversberg, 30.09.1996
B.Eversberg@tu-bs.de