Exportieren kann man entweder direkt mit dem Befehl   write,  der unmittelbar in die momentane Exportdatei schreibt, oder aber mit Hilfe von Export-Parametern mit dem Befehl export. Das zweite ist die mächtigere Methode, dafür aber muß man sich mit der  Exportsprache  auskennen. Der Vorteil ist, daß man mit einem einzigen Befehl, eben export, eine hochkomplexe strukturierte Ausgabe veranlassen kann, für die man sonst eine seitenlange Sequenz von write-Befehlen bräuchte.

Hinweis: Bis V27.1 gab es xport und download als getrennte Befehle. Sie wurden zusammengefaßt: Wo bisher xport oder download stand, kann nun einheitlich export stehen, download und xport bleiben aber möglich - kein alter FLEX muß geändert werden, alle drei sind nun synonym. Empfohlen wird, nur noch  export  zu verwenden.

   

Export    gleichwertig:  Download

export   avanti       gleichwertig, aber nicht mehr empfohlen:  download und xport

Aktuellen Satz exportieren (wie über Menü Export) mit Hilfe der geladenen Parameter (siehe export param)  

Mit E oder D  (nicht bei avanti) erfolgt der Export über die  PrintParameter  statt ExportParameter, aber in dieselbe Datei.   

Die Parameter und die Ausgabedatei kann man mit dem Befehl  export  p/f... ändern.   

Soll nur ein bestimmter Abschnitt in den Exportparametern ausgeführt  werden: vorher eine Variable besetzen, z.B. #uFL (mit Befehl  var xxx\ins #uFL), und in den Parametern am Anfang einen Sprung einbauen:    

#uFL +A e0   

Oder - einfacher - die nachfolgend beschriebene Form nutzen:

   

export -x       avanti

Führt in den geladenen Exportparametern den Abschnitt unter dem Label  #-x  aus. Dabei wird nichts ausgegeben, sondern gedacht ist dies für Manipulationen am Datensatz nach Art des beim alten Programm  UPDATE.EXE möglichen Verfahrens (sog. "parametrierte Vorbehandlung", Kap. 9.6). Dabei war nur das Label  #-#  möglich, hier ist es ein beliebiges. Dieser Befehl wurde nur eingeführt, damit man alte Parameterdateien dieser Art weiterverwenden kann, wenn mit dem Programm  acon  Updates zu machen sind.

Wenn bei #-x  eine Datenausgabe passiert, landet sie in der internen Variablen, und zwar wird sie hinten angehängt. Also vorher mit  var ""  leeren, wenn das nicht erwünscht ist, und anschließend  ins $xy, wenn das Ergebnis dann noch gebraucht wird.

Sonderfall: Der Abschnitt  #- E, sog. "Endabschnitt", kann ausgeführt werden, indem man

export - E  gibt. (Jeweils ein Leerzeichen hinter dem - .)

 

Tip: Bei den nachfolgend beschriebenen Optionen (param, table, file ...) genügt die Angabe des jeweils ersten Buchstabens, also z.B.  exp p name  statt  export param name.

 

export param name   avanti

export table name   avanti

Parameterdatei  name.xPR bzw. name.xPT für den Export laden.

Im zweiten Fall wird die Tabellendatei zur schon vorhandenen Export-Parameterdatei hinzugeladen. Das entspricht dem Befehl tname in der Exportsprache, doch es dürfen keine mit # oder ! beginnenden Zeilen in der Datei stehen, sie würden ignoriert.

Achtung: name ohne die Erweiterung  .xPR bzw. .xPT

Wenn name fehlt, wird der Inhalt der  iV  genommen.

Tip: Steht ? statt name, wird interaktiv eine Dateiauswahl angeboten.

Mit   if no  ...  kann man auf den Fehlerfall reagieren (Param. konnten nicht geladen werden). Die Fehlermeldung steht dann in der iV, d.h. man kann schreiben:

exp p abc

if no mes;jump perror

 

export file filename   avanti

export file +filename   avanti

Nachfolgende Exporte (per export oder  write ) sollen in die Datei  filename  gehen.

Das '+' bewirkt, daß an die Datei angehängt wird, sonst wird sie überschrieben.

Fehlt der filename, wird der Inhalt der iV als Dateiname genommen.

Tip: Steht ? statt filename, wird interaktiv eine Dateiauswahl angeboten.

Mit   if no  ...  kann man auf den Fehlerfall reagieren (Datei kann nicht zum Schreiben geöffnet werden).

Bei avanti  kann der filename auch stdout oder stderr sein. So kann man zwischendurch die Ausgabe des Befehls write auch mal auf die Konsole umlenken und mit exp f +... wieder zurückschalten.

 

Schließen kann man die Ausgabedatei mit  close x  . Das geschieht aber automatisch am Ende jedes Schreibvorgangs, man darf es also vergessen.

Übrigens: Die Datei wird erst dann wirklich angelegt, wenn etwas hineingeschrieben wird. Es kann also nicht passieren, daß eine leere Datei zurückbleibt, wenn gar nichts geschrieben wurde.

 

export brief  

                Die Kurzliste der Erg.Menge wird in die Exportdatei geschrieben. Wenn gerade eine ViewListe aktiv ist (d.h. zuletzt angezeigt wurde oder mit  view  ... geöffnet wurde), dann wird diese Liste geschrieben. Sollen dagegen die Datensätze als solche exportiert werden, muß exp view benutzt werden.

                Achtung: in avanti wird diese Funktion mit dem Befehl  list  realisiert.

   

export view       [zur  View-Technik  siehe "allegro news" 58]   

Die momentan geöffnete ViewListe wird zum Exportieren benutzt. Die Datensätze werden in der Reihenfolge der ViewListe ausgegeben. In den Exportparametern kann man die Variable #uzV nutzen, die jeweils die Zeile aus der ViewListe enthält. Auch die Zwischenzeilen (Überschriften, Summen) werden exportiert.

Aber: Es muß sich um eine ViewListe handeln, die aus einer Erg.Menge hervorgegangen ist. Diese zeichnen sich dadurch aus, daß die Zeilen mit einer internen Satznummer und dahinter | beginnen.

Anm.: avanti  kennt keine ViewListen.

   

export database   Die gesamte Datenbank wird exportiert. Mit Überlegung einsetzen, wenn sehr groß!   

   

export fam      avanti   

                Der aktuelle Satz wird zusammen mit allen per Verknüpfung dazugehörigen Sätzen (wenn es solche gibt) in die Exportdatei geschrieben. Die Reihenfolge ergibt sich durch die Ordnung der Primärschlüssel (s.a. Befehl   family  / Family )   

   

Export set   

export set   avanti (Zusatzfunktion siehe unten)  

Aktuelle Erg.menge exportieren (wie über Menü Export). Mit E werden, wie oben, die PrintParameter benutzt.   

   

export offline   

Wenn eine  Offline-Datei  existiert, wird diese als Ganzes exportiert (wie auf dem Menü "Export").   

 

export Head   avanti

export Foot   avanti

Hiermit kann man gezielt den Kopf- bzw. Fußabschnitt der Exportparameter ausführen lassen. Existiert der betr. Abschnitt nicht, geschieht nichts.

Nützlich kann das sein, wenn die Exportdatei einen bestimmten Vorspann oder ein bestimmtes Endstück braucht. Eher zu empfehlen ist in beiden Fällen  export -H  bzw.  export -F  mit zwei ganz normalen Abschnitten  #-H  bzw.  #-F  in den Parametern.

Wenn dieses unabhängig von den Daten ist, kann man dazu aber auch  wri Fname  einsetzen!   

   

export Ref   

Hiermit werden im aktuellen Satz die V14-Ersetzungen durchgeführt, d.h. Kürzel und Stammsatz-IdNummern durch Klartexte ersetzt. Eine Ausgabe erfolgt nicht, dazu muß noch ein normales  export  folgen.

Achtung: Den Datensatz nach diesemBefehl nicht anschließend speichern, denn die Kürzel und IdNummern sind dann als solche nicht mehr da. Diesen Befehl also nur einsetzen, wenn es lediglich um eine Verarbeitung von Daten geht, z.B. auch Durchsuchen.

Hinweis: In avanti  gibt es dafür den Befehl   set ai  .

 

export VS   avanti   

Hiermit kann man gezielt die  Verschlüsselungs-Sequenzen  im gesamten Datensatz ersetzen lassen. Das sind Zeichenfolgen z.B. von der Form ऩ , die durch Klartext ersetzt werden sollen. Voraussetzung ist, daß im Ersetzungsregister die Sequenzen korrekt indexiert sind und daß in den Indexparametern das Zeichen & auf den Wert 9 gesetzt ist.  Siehe Verlautbarung 154.

Achtung: Den Datensatz in einem solchen FLEX nicht anschließend speichern, denn die Sequenzen sind dann als solche nicht mehr da. Diesen Befehl also nur einsetzen, wenn es nur um Export von Daten geht.

 

export a     aus  ^e  wird  e^

export A     aus  e^  wird  ^e

Beides auch in  avanti

Verschiebt die diakritischen Zeichen (Akzente) hinter bzw. vor die Buchstaben. Notwendig ist das nur dann, wenn man intern ASCII oder ANSI hat, aber  Unicode  erzeugen will. Denn Unicode verlangt es andersrum als allegro: Akzent folgt dem Buchstaben.

Hinweis: Dasselbe kann man in den Exportparametern machen mit den Befehlen  #da  bzw.  #dA.

Achtung: Wirkt auf den gesamten Datensatz UND den Hintergrundspeicher!

Nur auf den iV-Inhalt wirkt dagegen diese Variante:  (ab V31.7)

export ai  

export Ai

Beides auch in  avanti

Welche Zeichencodes für Diakritika stehen, muß in einer Variablen  pa  innerhalb der Export- oder Indexparameter angegeben sein. Standardmäßig (für OstWest-DOS-Code) sieht diese so aus:

pa=181 182 183 184 189 190 198 199 207 208 209 210 211 212 219 222 223 232

Für den Windows-Code ist es folgende Liste:

pa=180 145 136 149 168 166 227 179 186 175 215 171 184 191 161 173 247 150

 

export wX       avanti

Steuert die Art der Ausführung der nachfolgenden  write -Befehle, bei avanti auch  qrix  und  list .   

Dient nur zur Setzung einer Sprungmarke, ersetzt nicht den write-Befehl selbst, macht selber keinen Output!!  

Wenn es in den aktuellen Exportparametern eine Sprungmarke #-X gibt, werden nachfolgende write-Befehle nicht direkt ausgeführt, sondern die Zeichenkette, die ein write erzeugt hat, wird an den Export übergeben, und zwar an die Sprungmarke #-X der Parameter. Dort ist die Zeichenkette unter dem Variablennamen #u1 verfügbar. Erst das Ergebnis dieses Exports wird in die Exportdatei geschrieben.   

Gedacht ist dies vor allem, aber nicht nur, dazu, ohne Komplikationen korrekten Unicode-Export mit dem Befehl write erzeugen zu können.   

Achtung: wenn man Unicode-Output macht, intern aber ASCII hat:

VOR den write-Befehlen sollte man noch  exp a  einfügen, dahinter   exp A, um die Akzentvertauschung mit einzubeziehen (s.o.).   

In den Exportparametern muß dann nur stehen (siehe mitgelieferte p-unicod.apr)   

   

dx=1         damit Umcodierung ausgefuehrt wird   

tad-utf      Tabelle ad-utf.apt laden. ODER:   

   tad-aw       aktivieren, wenn Windows-Output gewünscht   

#-X          Sprungmarke   

#u1          Die von write erzeugte Zeichenkette ausgeben   

#+#          Ende   

  

Mit export w0 wird die Ausführungsart wieder auf "normal" gesetzt.

Zu Anfang eines jeden FLEXes ist "normal" eingeschaltet, d.h. der Befehl gilt nicht für die gesamte Sitzung, nur für den einen FLEX.

Arbeitet man mit  Unicode-Verfahren 2 , braucht man keinerlei Vorbereitungen dieser Art zu machen! Erzeugt man aber eine HTML-Datei, muß diese am Anfang oder im Header die notwendige Angabe enthalten, daß die Datei in UTF-8 codiert ist.   

 

Mit  if cancel ... kann man in allen Fällen checken, ob der Exportvorgang mit [Esc] abgebrochen wurde.   

 

Nur avanti     

export set prefix: "Satztrenn-String"

Als Option kann vor jeden Datensatz eine Zeile mit dem Inhalt   Satztrenn-String  eingefügt werden.

Eine solche Trennung erleichtert die Auflösung der übertragenen Sätze im Client-Programm und arbeitet effizienter als eine „get-next"-Schleife.

 

 

Beispiel 1 : Export der aktuellen Ergebnismenge

Aufgabe: Es soll mit Hilfe von  P-W.APR (Ausgabe im RTF-Textformat) die Ergebnismenge in die Datei  LISTE.RTF  geschrieben werden, wobei die Hilfsdatei  LONGHEAD.RTF vorangestellt und am Ende noch als Abschluß die Zeichen "}}}" anzufügen sind.

 

  Dateinamen für den Export setzen

export f liste.rtf

  Dateikopf zuerst ausgeben

write Flonghead.rtf 

  Parameter laden

export p p-w 

  Ergebnismenge ausgeben

export set

  Abschlußzeichen:

write "}}}"

 

Jetzt kann die fertige Datei sofort in WinWord eingelesen werden.