![]() | Neue Sicht der Dinge Views |
Auszug aus allegro news Nr. 58, (2000/2) vom 19.10.2000
Ergebnismengen konnten früher nur mit Hilfe der Kurztiteldatei der Datenbank (.STL) betrachtet werden: In der Kurzanzeige sieht man zu jedem Satz die zugehörige Kurzzeile. Zum Ordnen der Ergebnismenge können in a99/alcarta nur diejenigen Kriterien verwendet werden, die in der Kurzzeile an festen Positionen auftreten (oder mit Alt+s die interne Satznummer).Nicht immer ist für einen konkreten Zweck die Kurzzeile gut geeignet - weil sie immer gleich aussieht, und es gibt nur genau eine je Satz. Manchmal bräuchte man einen Überblick mit anderen Datenelementen, und manchmal würde man gerne eine andere Ordnung herstellen können. Zum Beispiel sind die Kurzlisten bei einer bolero-Datenbank nach dem Einheitstitel geordnet, manchmal ist aber eine Übersicht nach Opusnummern erwünscht oder auch nach Interpreten, Dirigenten, Aufführungsjahren, Orchestern ... nichts davon steht aber in der Kurzliste.
Man hätte also gern geschmeidige Alternativen zur Standard-Kurzanzeige, um Ergebnismengen in einer dem Zweck angemessenen Form und Reihenfolge durchsehen oder auch exportieren zu können. Denn Datenbanken können viele unterschiedliche Satztypen enthalten und es können immer neue und neuartige Ansprüche über eine Datenbank hereinbrechen, z.B. wenn man Geschäftsgänge damit unterstützt.
Angedacht wurde auch einmal, daß es mehr als nur eine STL-Datei geben könnte. Zwar würde dies für eine Reduzierung gähnender Leerräume auf zeitgenössischen Festplatten sorgen, dennoch aber hätte man nur eine begrenzte Zahl von letztlich auch wieder voreingestellten und wenig anpassungsfreudigen Sichtweisen, weil man dazu gute Parametrierkenntnisse braucht und schnelle Änderungen selten machbar sind, im laufenden Betrieb überhaupt nicht.
Kurzum: die Sicht (engl. view) der Dinge, sprich der Ergebnismengen, sollte flexibel einstellbar sein und wenn irgend möglich ohne großes Insiderwissen kurzfristig, am besten ad-hoc neue An- und Einsichten eröffnen einschl. Export. Schließlich ist die Datenbank kein Selbstzweck, sondern sie soll Früchte tragen.
Aus der Sicht des classico-Systems ist außerdem noch festzustellen:
Per CockPit können aus Ergebnismengen beliebig sortierte Listen erstellt werden (siehe Handbuch Kap. 6), doch wird dies trotz Vereinfachungen noch immer als relativ umständlich empfunden. Im Windows-System soll es mindestens soviel Flexibilität geben, aber man wünscht sich entscheidend weniger Parametrierarbeit und die Möglichkeit, die Vorgänge online durchzuführen und mit sofortiger Betrachtung der sortierten Liste, wahlweise jedoch auch mit einer Druck- oder Dateiausgabe in Listen- oder Tabellenform. Letztere könnte dann nebenbei unter Windows die "alten" CockPit-Funktionen der Listenproduktion ersetzen. (Es gibt sie aber auch noch auf dem Export-Menü von a99.)
Die Lösung sind ViewListen:Eine ViewListe ist eine besondere Form der Darstellung einer Ergebnismenge.
(Eine andere Form ist die Tabelle, die man auch mit Office-Programmen weiterverwenden kann. Geben Sie ein h table, dann erfahren Sie mehr.)
Eine ViewListe gestattet das Durchsehen, Durchsuchen und Exportieren einer Ergebnismenge in einer sinnvollen Reihenfolge und mit Anzeige von zweckdienlichen Feldinhalten, und zwar bei Bedarf mit Gruppierung nach einem gewünschten Feld und mit Summierung von Zahlen.
Sie wollen das sofort sehen? Weiter unten steht, wie's geht.
Im Folgenden wird immer das englische Wort "View" statt des deutschen "Sicht" benutzt.
Unter derselben Bezeichnung gibt es etwas Ähnliches, aber grundsätzlich doch anderes bei relationalen Datenbanken. Dort ist ein View ein zur Datenbankstruktur gehöriges Element, einzurichten vom Systemverwalter und dann permanent vorhanden, aber selten schnell realisierbar oder änderbar. Für allegro ist ein View eine temporäre Datei, erstellbar durch jeden Datenbankbenutzer, jederzeit und sofort. Die entwickelte Methodik ist einerseits sofort einsetzbar, ohne langes Vorstudium, andererseits kann man mit einschlägigen Kenntnissen, wie bei allegro üblich, für lokale Zwecke und kompliziertere Aufgaben beliebige Varianten und Verfeinerungen ausarbeiten. Das gilt für die Parameterdateien sowohl wie für die FLEXe.
Datentechnisch besteht eine ViewListe aus einer sehr einfachen Textdatei mit je einer Zeile für jeden Datensatz. Solche Dateien können leicht und schnell erstellt werden, auch außerhalb von a99/alcarta, z.B. mit PRESTO oder SRCH. Die View-Funktionen gibt es nur für a99/alcarta , nicht für die konventionellen Programme; es wurde dafür der neue FLEX-Befehl View eingerichtet.
Das
ViewListen-Fenster kann aber noch mehr:
Nicht nur Ergebnismengen können in dem Fenster
präsentiert und genutzt werden, auch Textlisten aller Art und
beliebiger Größe:
Auswahllisten für Codes oder Systematiken, Menülisten (wobei
hinter
jeder Zeile
ein FLEX stecken kann). Und diese Listen können komfortabel
durchsucht
werden, in FLEXe und Formulare eingebunden ...
Vielleicht wird die praktische Bedeutung dieser Sonderfunktion
nicht
geringer
sein als die der Ergebnismengen-Nutzung. Mehr zum Thema ViewListen.
Einzelteile
des View-Konzepts
[Hintergrundwissen
für Allegrologen]
Nutzung der View-Technik setzt voraus, daß man auf dem Start- und auf dem Temp-Verzeichnis Schreibrecht hat. Wenn in der INI-Datei kein Befehl DbAux=... steht (mit dem man das Arbeitsverzeichnis setzt), wird als Temp-Verz. dasjenige genommen, das in der Environment-Variablen TEMP steht. Meistens ist dies c:\windows\temp. Dort kommen die temporären Dateien zu liegen, die nach Ende einer Sitzung ohne Weiteres gelöscht werden können. Die Parameterdateien (vom Typ v-*.cpr ), die man nicht selten später erneut gebrauchen kann, werden auf das Startverzeichnis geschrieben, desgleichen Exporte, was man durch Eingriff in die FLEXe aber ändern könnte.
Eine
ViewListe hat den Dateityp .VW. Sie besteht aus
Zeilen
von exakt gleicher Länge (Auffüllung am Ende mit
Leerzeichen!). Ist
das beim
Aufruf nicht gegeben, wird das Programm selbständig eine Kopie der
Datei
erstellen und darin alle Zeilen an der längsten ausrichten. Jede
ViewListe kann
aber ihre individuelle, passende Zeilenlänge haben. (Achtung: die Ausgangsdatei wird
durch die Kopie ersetzt. Bein nächsten Aufruf hat sie also schon
die richtige Gestalt.)
So sieht, schematisch, ein Datensatz, d.h. also eine Zeile, in einer ViewListe aus:
00001234|TEXT 13 10
Die
hochgestellten,
unterstrichenen Zahlen 13 und 10 sind die üblichen
ASCII-Steuercodes
für die
Zeilentrennung.
Warum die feste Länge? Diese macht es viel
schneller,
die Anzeige
dann erscheinen zu lassen und darin zu blättern, als wenn die
Zeilen
variabel
wären. Bei Ergebnismengen von mehreren tausend Sätzen wirkt
sich dies
sehr
spürbar aus. ViewListen sind in aller Regel temporär, daher
kann man
sich diese
Ineffizienz leisten. (Übrigens: Hat eine ViewListe ausnahmsweise
Zeilen
unterschiedlicher Länge, merkt das Programm dies beim Einlesen und
korrigiert
es, d.h. die Datei wird entsprechend verändert; es dauert nur
etwas
länger, bis
sie dann erscheint! Tip: Bei sehr
langen ViewListen
geht das Verändern am schnellsten, wenn die erste Zeile die
längste ist.)
Der Inhalt eines View-Satzes ist zweiteilig: eine interne Satznummer (hier 8stellig mit führenden Nullen, das ist jedoch nicht verbindlich), und ein davon durch das Zeichen '|' getrennter TEXT, eine beliebige Zeichenkette. Diese besteht normalerweise aus Elementen des Datensatzes, dessen Nummer vorn steht, und zwar genau den Elementen, die man für einen bestimmten Zweck braucht. In der Regel wird dieser Text in sinnvoller Weise sortierbar sein, wobei die zum Sortieren dienenden Elemente vorn stehen müssen.
Erfreuliche Nebenwirkung: Jede Datei xyz, die so aussieht, kann mit dem FLEX-Befehl View xyz als ViewListe angezeigt werden, egal wie man sie erstellt hat! Im Extremfall ist es eine Textdatei ohne ein '|' oder mit jeweils "abc|" am Anfang jeder Zeile, wobei 'abc' nicht mit einer Ziffer beginnt. Die ViewListe wird angezeigt im Kurzanzeige-Fenster und erlaubt dann die Auswahl einer Zeile. Beginnt die Zeile mit einer Nummer größer als Null, wird der zugehörige Satz sofort angezeigt, wenn der Leuchtbalken darauf geht. Man hat hier nebenbei eine Alternative zum FLEX-Befehl "select", denn:
Anschließend
(nach
Druck auf
[Enter]) steht die ausgewählte Zeile dann in der "internen
Variablen". D.h. die Angabe "abc",
im View nicht
sichtbar, kann dann auch per FLEX ausgewertet werden! Kommt kein '|'
vor, ist die ganze Zeile sichtbar. select-Listen sind im Umfang
recht begrenzt und langsam, bei sehr langen Listen ist die View-Methode
sehr im Vorteil. Beispiel: geben Sie ein v quick
(dann erscheint
quick.vw ). Schauen Sie sich
die Datei quick.vw an,
dann erkennen Sie leicht, was man alles machen kann. Eine weitere
Alternative zum select gibt es ab V25: das aresqa-Fenster.
Wie könnte nun der
TEXT
zusammengestellt werden? Vielleicht einfach so, daß man die
gewünschten
Kategorienummern angibt? Das mag in einfachen Fällen reichen und
wird
auch über
ein Formular komfortabel gelöst, siehe unten (Seite 6), aber wenn
die
gesamte
Bandbreite der potentiellen Wünsche abgedeckt werden soll,
muß
man
vieles
bedenken:
Das alles legt nahe, daß eine ViewListe nur mit den Mitteln der Exportsprache adäquat herstellbar ist. Dabei gibt es zwei Möglichkeiten:
A) die TEXT-Zeilen sind unmittelbar sortierfähig. Dann kann die Liste direkt in der beschriebenen Form exportiert und dann sortiert werden, bevor man sie anzeigen läßt.
B) die TEXT-Zeilen sind nicht unmittelbar sortierfähig. Dann muß die Erstellung der ViewListe über einen Umweg laufen: es wird zuerst eine sortierbare Grunddatei mit zwei Kategorien je Satz erstellt. Die erste Kategorie, #u1, enthält den Sortierwert, die zweite, #u2, die anzuzeigende Zeile. Beide können in ihrer Form, aber auch im Inhalt, ganz verschieden sein. Nach dem Sortieren wird dann die #u1 ganz beseitigt und es bleibt die geordnete ViewListe übrig.
Das Sortieren im Fall 2) geschieht mit dem allegro-Sortierprogramm ASORT.EXE, welches so angepaßt wurde, daß es die Beseitigung des Sortierfeldes #u1 am Schluß automatisch machen kann (neue Option -u3). Übrigens: #u1 braucht nicht von fester Länge zu sein, nur #u2.
Eine ViewListe entsteht in beiden Fällen als Export einer Ergebnismenge mit Hilfe einer View-Parameterdatei, kurz ViP genannt, mit einem Namen der Form V‑XYZ.APR, die immer denselben Aufbau hat. Den Teil mit den allgemeinen Exportparametern kann man für andere Kategoriesysteme einfach kopieren. Die speziellen, auf den jeweiligen Zweck bezogenen Angaben bilden einen Block, der jeweils für eine neue Aufgabe zu bearbeiten ist. Im classico-System entsprechen diesen Dateien die Parameterdateien S‑*.APR zur Erstellung einer Sortierdatei. Es kann beliebig viele solche ViPs geben.
Das Erstellen von ViP-Dateien ist Sache des Systemverwalters, der dafür aber nur relativ wenige Parametrierkenntnisse braucht (es sei denn, man hat sehr diffizile Wünsche).
Das Anwenden der ViPs ist, wie das Anwenden der Sortierdateien im classico-System, ohne Parameterkenntnisse möglich, zumal wenn die Anwendung auch noch in FLEXe eingebettet wird. Als kommentierte Vorlage benutzt man die Datei V‑STAND1.APR oder V-STAND2.APR (letztere mit Gruppierung und Summierung) oder eine andere vorhandene ViP.
Hier
ein Beispiel:
In der
Datei V-STAND2.APR
(für den Standard-View 2 )
findet
man in der
Mitte diesen Abschnitt:
#-A (Oberhalb befindet sich das Kopfstück, der standardisierte Abschnitt view1.apt)
****** Variabler Teil ********
Nur hier muß man eingreifen, und zwar
diejenigen
Kategorien einsetzen, aus denen
der View bestehen soll,
jeweils mit geeigneten Manipulationsbefehlen
Abschnitt
für die ViewListen-Zeile:
Nur die
mit Strichen
markierten
Zeilen muß man verändern, alles andere kann übernommen
werden, auch
für andere
Konfigurationen. Wichtig:
Im ersten
Abschnitt wird keine eigentliche Ausgabe gemacht! Es wird hier nur eine
Variable #uvv erstellt, aus der dann weiter unten erst (unter #-D)
die Zeilen der ViewListe gemacht werden. Allenfalls kann man dort noch
die
Länge (default: 80 Zeichen) verändern, sonst braucht man
nichts weiter
zu tun.
Will man für die ViewListe eine Spaltenanordnung, kann man das jeweils mit den Befehlen en sn erreichen, also z.B. e20 s20 um die Länge des Abschnitts auf 20 Zeichen zu begrenzen und mit Leerzeichen aufzufüllen.
Für die Differenzierung der Anzeige des Views gibt es zwei Möglichkeiten. Dabei wird nach dem Sortieren die Parameterdatei VIEWGRUP.APR benutzt, die man unverändert auch für andere Kategoriesysteme einsetzen kann.
Wenn beides zutrifft, hat das Feld TEXT also die
Form:
Gruppe:Text_Zahl
Für Allegrologen:
Daraus macht das Programm SRCH mit der Parameterdatei VIEWGRUP.APR eine übersichtliche ViewListe. Die Funktion der Zeichen : und _ ist nicht im Programm "verdrahtet", sondern nur in VIEWGRUP.APR. Wer parametrieren kann, darf sich auch ganz andere Dinge ausdenken, um die ViewListe zu erstellen.
Auch eine extern (mit PRESTO oder SRCH oder anders) erstellte ViewListe kann mit den Schritten 2 und 3 benutzt werden.
Aber
noch mehr: die
schlichte
Struktur der ViewListen erlaubt es sogar, Auswahllisten beliebiger Art
in
derselben Form zu erstellen, die dann mit dem Befehl
View präsentiert werden
können. Zeilen,
die nicht
mit einem Satz verbunden sind, sollten am Anfang die Angabe "0|"
haben oder aber das Zeichen '|' nicht enthalten. Die ausgewählte
Zeile
geht
dann in die interne Variable über und kann beliebig weiter
verwertet
werden. Im
FLEX sieht das so aus:
ViewListe
anzeigen:
View
dateiname (Achtung: View
mit großem V, sonst keine
Anzeige, sondern nur Dateiöffnung)
Es
wurde [Esc]
gedrückt:
if
cancel jump xxx
Es
wurde eine
Zeile ausgewählt
(mit
Enter oder [OK]): in #uaw kopieren
ins
#uaw
...
In #uaw
hat man anschließend die ausgewählte Zeile aus
der ViewList und kann damit beliebig umgehen.
Tip: Um eine bestimmte ViewListe, die man vorher produziert hat, erneut zu sehen, kann man sie auch manuell aufrufen: man gibt im Schreibfeld ein
v dateiname
Verbesserungen von
ASORT
Das DOS-Sortierprogramm ASORT.EXE wurde so
verbessert, daß
es die Aufgaben des View-Konzepts wahrnehmen kann, wenn auf DOS-Ebene
eine
ViewListe hergestellt werden soll:
Option -u3
beseitigt die Kategorie #u1 und verwandelt #u2 in eine reine Textzeile
(Option -u1 würde nur #u1 weglassen, -u1 dagegen beseitigt #u1 und #u2)
Option -r
sorgt für umgekehrte Sortierung (wird im Standardpaket nicht ausgenutzt).
Ältere Versionen (vor dem 7.8.2000) dieses Programms sind nicht brauchbar für die View-Technik.
Wie erstellt und nutzt man eine ViewListe?
Dazu gibt es mehrere Möglichkeiten, die mit fertigen Parametern und FLEXen unterstützt werden. Weitere Methoden und Varianten lassen sich entwickeln, wenn man die Bausteine erst einmal beherrscht (siehe oben).
Zuerst
braucht man
eine Ergebnismenge. Wie man eine macht,
wissen Sie. Was darin ist und wie groß sie ist, spielt keine
Rolle. Der
Name
steht dann unten auf der langen Schaltfläche, wie immer. Was macht
man,
um eine
"Neue Sicht" dieser Daten zu erhalten? Man ruft das View-Menü auf.
Am schnellsten mit Eingabe von h
view
im Schreibfeld
oder auch Punkt "Views" im Menü "Ansicht". Es kommt dann das
folgende Auswahlmenü:
![]() |
Für schnelle ad-hoc-Listen ist der Punkt Neue ViP anlegen Mit Formular am wichtigsten. Weiter unten ist das Formular abgebildet. Mit Doppelklick auf HILFE..HILFE..HILFE (rechts oben, hier nicht zu sehen) kann
man eine ausführliche
Version
dieses Menüs anfordern. |
Tip: Geben Sie h view.rtf ein, dann sieht man auch die zu den Menüpunkten gehörenden FLEXe.
Das Menü hat links die Funktionen zum Erstellen neuer ViewListen, rechts die zur Benutzung vorhandener ViewListen.
Der Reihe nach:
ViewListen erstellen
Mit Standard-ViPs (Ein Doppelklick genügt und alles läuft automatisch ab)
Hier wird der FLEX view1.flx gestartet bzw. view2.flx. Die ViPs v-stand1.apr bzw. v‑stand2.apr werden dabei benutzt (Normaler View bzw. mit Gruppierung und Summierung).
Für Views, die immer wieder gebraucht werden, kann man ein- für alle mal einige durchdachte Parameterdateien anlegen und dann Kopien des FLEX view1.flx oder view2.flx nutzen, um jeweils die aktuelle Ergebnismenge damit zu betrachten. Nur den Namen der eigenen Parameterdatei muß man darin einsetzen.
Die Parameterdateien v-stand1.apr und v-stand2.apr kann man als Vorlage oder Strickmuster für eigene ViPs verwenden. Die Stellen sind markiert und kommentiert, wo man modifizieren kann.
Den einschlägigen Parameterdateien sollte man Namen der Form V-*.cPR geben.
Wer die Exportsprache beherrscht, hat hier alle gewohnten Gestaltungsmöglichkeiten.
Mit eigener ViP (dahinter steckt der Aufruf: X view0.flx )
view0.flx ermöglicht die Auswahl einer vorhandenen ViP (wenn man schon mehrere geeignete Parameterdateien des Typs V‑*.cPR hat) und führt dann damit die Produktion durch. Wer sich mit der Exportsprache auskennt, kann auch jede ViP modifizieren, ausbauen und verfeinern.
Neue ViP anlegen: Mit Formular (Für Einsteiger das Einfachste, um eigene Wünsche zu verwirklichen)
Über ein Eingabeformular kann man vorgeben, aus welchen Bestandteilen die ViewListe zusammengesetzt werden soll. Hier braucht man keine Parametrierkenntnisse, dafür sind die Möglichkeiten nicht ganz so weitreichend. Immerhin: es entsteht jedes Mal automatisch eine Parameterdatei, die man hernach auch aufbewahren, verfeinern oder erweitern (mehr als 6 Datenfelder ausgeben lassen!) und dann über "Mit eigener ViP" wieder nutzen kann.
(dahinter steckt der Aufruf: X viewform.flx )
Das Formular sieht so aus: (F1 erklärt, was zu beachten ist)
|
Hier
wurde eingegeben, daß #75 (Verlag) das erste Feld sein soll,
begrenzt
auf 15 Zeichen. Nach diesem Feld wird also sortiert und auch gruppiert
(unter "Gruppierung" ist j eingetragen). Zusätzlich werden #20
(Titel)
und #76 (Jahr) ausgegeben. Das Feld #95 enthält einen Geldbetrag
und
soll mit 5 Stellen und 2 Nachkommastellen ausgegeben werden. Es wird
dann summiert, sowohl nach Gruppen als auch insgesamt. |
Dieses Formular ist in der Datei view2.frm definiert. Die Eingaben kommen in Variablen #uvA - #uvZ und werden vom FLEX viewform.flx dann zu einer Parameterdatei verarbeitet. Diese wird benutzt, um die Ergebnismenge in eine ViewListe zu verwandeln. Wer jedoch Parametrierkenntnisse hat, kann in den Eingabezeilen "Feld 1" bis "Feld mit Zahl" auch Manipulationsbefehle mit unterbringen, z.B. #20 e" : ", damit vom Feld #20 (Sachtitel) der Zusatz abgeschnitten wird.
Neue
ViP anlegen:
Mit Parametern (für Allegrologen ,
man braucht hierfür Parametrierkenntnisse)
(Start: x var "Start"\ins #uYa\var "X viewpara.flx"\ins #uZa\h viewpara )
Der dann erscheinende Hilfetext (Datei VIEWPARA.RTF) sieht so aus:
Wählen
Sie
die
Kategorien, die in Ihrer ViewListe
erscheinen sollen
(Alt+y :
dann
sehen Sie links die Liste aller Kategorien.)
Wenn
fertig; auf
Start
doppelklicken
oder Strg+s.
Schreiben
Sie für
jede gewünschte Kategorie eine Zeile, dahinter geeignete
Manipulationsbefehle,
z.B. so:
*** Zeilen für die ViewListe (alles in Variable #uvv kopieren!)
#40
e20
=vv
#20 U e40
p": " Avv
Gruppierung
gewuenscht
#76
e5
p" (" P")" Avv
#77
x"*1" e"." p"_" Avv
Summierung
gewuenscht
***
Ende ViewZeilen
#+D
Zeilen für die Tabellen-Ausgabe:
(#uxV ist
die
ViewZeile)
#-Q
#uxV +-
c'0t|'
B'|' f' |' e0
#uxV
c'0a|' B'|'
f' |' F' '
*** Tabellenkategorien
#20
#t9
#40
#t9
#76
#t9
#77
*** Ende Tab.Kateg.
#uxV c's|' B'|' f' |' F' '
Aber nehmen Sie die Beispielzeilen zwischen *** ... *** weg, denn jede Zeile wird verarbeitet, die mit '#' beginnt. Günstig ist, wenn die Gesamtlänge nicht größer als 80 Zeichen ist.
Tips:
1. Ist Gruppierung gewünscht; dann ":" zwischen dem ersten und zweiten Feld (s.o. #20)
2. Ist Summierung gewünscht: "_" vor dem letzten Element, das dann als Zahl interpretiert wird (s.o. #77).
Die Kategoriezeilen, die man hier eingibt (mit '#' beginnend), werden anschließend als Mittelteil der ViP verwendet.
Wenn man auf Start doppelklickt, wird VIEWPARA.FLX gestartet und der Text im Anzeigefeld verarbeitet.
(Den Befehl X viewpara kann man auch mit der Hand im Schreibfeld eingeben, um dies auszulösen.)
Tip: will man die in der aktuellen Sitzung zuletzt betrachtete ViewListe erneut sehen: im Schreibfeld eingeben
x view again
Die neu entstehenden ViewListen haben bei diesen Prozeduren immer den Namen VVV.VW. Anschließend hat man die Möglichkeit, ihr einen anderen Namen zu geben und damit für eine längere Aufbewahrung zu sorgen.
Und jetzt
zu den Funktionen
auf der rechten Seite
des Menüs:
ViewListen
benutzen
Aktuelle ViewListe = liste
neu
anzeigen
Dieser Punkt löst den FLEX-Befehl
View
again aus, worauf
die ViewListe
wieder erscheint. Dasselbe kann man mit Strg+o erreichen, weil der
Befehl
automatisch auf diese Kombination gelegt wird. (Das passiert in der
Datei view.rtf)
exportieren
(dahinter
steckt der Aufruf: X
viewexp.flx )
Die Datensätze der ViewListe werden in der Reihenfolge der
Liste
exportiert. Man wird gefragt, mit welchen Parametern das geschehen soll
und in
welche Datei. Es kommen hierfür, wenn die Liste anschließend
gedruckt
werden
soll, die Parameterdateien der Struktur P-*.APR in Betracht,
grundsätzlich
kann aber jede Export-Parameterdatei gewählt werden. Zusammen mit
der
Möglichkeit, die Sortierung der ViewListe einzustellen, hat man
somit
einen
vollen Ersatz für die alte CockPit-Methodik
der Listenproduktion (Kap. 6 des
Handbuchs). Mehr dazu siehe unten.
als Tabelle ausgeben (dahinter steckt der Aufruf: X viewtab.flx )
Der zweite Teil der ViP tritt in Kraft: Es werden die gewählten Datenfelder in voller Länge exportiert, jeweils mit einem bestimmten Trennzeichen dazwischen. Meistens wird man das TAB-Zeichen dafür wählen, deshalb ist es voreingestellt (Code 9). Die entstehende Ausgabedatei hat denselben Namen wie die ViewListe, nur mit dem Typ .vt .
Vorhandene ViewListen sichten, löschen, umbenennen (Aufruf: X viewold.flx )
Die auf dem TEMP-Verzeichnis noch vorhandenen ViewListen (Typ .VW) werden zur Auswahl gezeigt. Jede davon kann man sich sofort anzeigen lassen, löschen oder umbenennen.
Hinweis: Es versteht sich von selbst, daß eine ViewListe, einmal erstellt, eine statische, von der Datenbank losgelöste Textdatei ist und daher nach kurzer Frist veraltet sein kann (sie hat keinerlei funktionale Verbindung mit der Datenbank). Ist die ViP noch vorhanden, kann man eine ViewListe aber jederzeit schnell erneuern.
Einen View exportieren = Eine sortierte Liste produzieren
Hat man gerade einen View erstellt, kann man mit dem neuen FLEX-Befehl download view die zum View gehörigen Datensätze in der durch den View gegebenen Reihenfolge exportieren. Benutzt dazu werden die aktuell eingestellten Exportparameter. Mit dem xport-Befehl kann man natürlich vorher die Ausgabedatei und/oder die Exportparameter auch anders einstellen.
Die mit 'X' markierten Zeilen werden nicht exportiert. Ansonsten wird jede Zeile der ViewListe verarbeitet, auch diejenigen, die keine Satznummer haben: In den Exportparametern hat man immer die aktuelle View-Zeile in der Variablen #uxV und kann diese darauf prüfen, ob sie mit einer Zahl beginnt, z.B. mit den Zeilen (siehe auch Kommentar in v-stand2.apr)
#uxV
+A x">0" e0
... hier
die Befehle für den Fall, daß kein
Datensatz vorliegt, sondern z.B. eine Überschrifts- oder
Summenzeile
#+#
#-A hier geht's weiter, wenn ein Datensatz vorliegt
Ist eine ViewListe xyz.vw vorhanden, egal wie und wann sie erzeugt wurde, kann man jederzeit in einem FLEX schreiben:
view xyz.vw
down view
um den Export auszulösen.
Mit View xyz.vw kann man die ViewListe wieder betrachten.
View-Erstellung in eigene FLEXe einbauen
In
den FLEXen
view1.flx
und view2.flx
sieht man, wie es
gemacht wird. Diese Dateien sind ausführlich kommentiert, damit
man
sieht, wo
eingegriffen werden kann. FLEXologen können diese Grundmodelle
beliebig
ausbauen.