`Register` 
Für acon hat der Befehl eine `andere Wirkungsweise`, siehe unten. 

Spezielle Einlesefunktionen

read 
read rec name
Datei `E.ADT` bzw. Datei  name   wird eingelesen. Diese kann eine Reihe von Kategorien enthalten, die dann alle in den aktuellen Satz eingefügt werden. (Erfassungshilfe; manuell mit ALt+ä oder Menü "Bearbeiten | Read") 
Wenn name fehlt, wird der Inhalt der iV genommen. 

Achtung: Einen kompletten Datensatz einlesen aus einer geöffneten Datei (Typ .ALG oder .ADT) geht auch, aber mit dem Befehl  `fetch rec`.

read extern
Datei EXTERN.DAT wird als externe Datei eingelesen (wie über das Menü "Datei | Externe Datei laden"). 
Die Datei kann wahlweise die Grundstruktur (.ALG) haben oder die `Externstruktur` (.ADT), das erkennt das Programm automatisch. 
Dies wird man hauptsächlich für Prozeduren nutzen, die mit ExFLEXen arbeiten, um Daten von außen anzuliefern. 

read file name
Datei name wird als Externdatei eingelesen. Es muß sich um eine Datei vom Typ .ADT oder .ALG handeln. Sie wird den schon vorhandenen Offline-Daten hinzugefügt (wie über das Menü "Datei | Weitere Offline-Datei laden"). 
Vorher kann man mit  `erase off` den Offline-Speicher leeren. 
Mit `if no` ...  kann man checken, ob es gelang und die Datei etwas enthielt, bevor man sie mit `show list` anzeigen läßt. 
Hinweis: Im Dateinamen können normale Schrägstriche statt \ verwendet werden! Wenn man den \ nimmt, muß man ihn verdoppeln. 
Alternative: Statt dieses etwas veralteten Befehls kann man auch schreiben, wenn z.B. der Name in der Variablen  #una  steht::
var "F" #una
var          // Die Datei in die iV holen
insert       // Den iV-Inhalt in den Dateisatz einsortieren

Eine Besonderheit sind die sog. externen Erg.Mengen, die z.B. bei einem Aufruf von PRESTO oder SRCH entstehen! Diese bestehen nur aus einer Liste interner Satznummern von Datensätzen, die bereits zur Datenbank gehören. Auch mit FLEXen kann man solche Dateien erstellen und an diese Stelle verwenden: 

read set name     acon  [ab V29]
Datei name wird als PRESTO-Ergebnismenge eingelesen. Die Datei besteht nur aus einer Titelzeile und dann einer Liste von Satznummern in beliebiger Folge, je eine Nummer pro Zeile. (Eine solche Datei namens X.SET entsteht, wenn man vom Menü "Datei" aus PRESTO aufruft und dann eine Ergebnismenge exportiert. Dabei werden die Parameter RS.APR benutzt.) Es spielt aber keine Rolle, wie diese Datei entstanden ist. Mit `if no` ...  kann man checken, ob das Einlesen gelang und die Datei etwas enthielt, bevor man sie mit `show list` anzeigen läßt. 

Beispiel 1:
Der FLEX  `fts.flx`  ermöglicht eine Volltextsuche in der Datenbank und liest dann die Ergebnisse in a99 ein. Das Volltext-Suchprogramm SRCH.EXE wird gestartet (in einem DOS-Fenster), es führt die Suche aus und exportiert eine Datei mit den Nummern der gefundenen Datensätze. Ab V27.1 kann man statt dessen auch per FLEX eine Volltextsuche in der Gesamtbank machen, wobei der Befehl `srx` zum EInsatz kommt.

Beispiel 2:
Man kann das Anzeigefeld zum Editieren benutzen: 
Zuerst mit F5 die Internform des Satzes anzeigen lassen, dann diese bearbeiten. 
Und nun reicht ein ganz kurzer FLEX
x file xx\read rec xx
um das bearbeitete Anzeigefeld in die Datei  xx  zu speichern und diese dann wieder in den Datensatz einzulesen. Das klappt auch bei hierarchischen Sätzen! Tip: Wenn man das regelmäßig machen will, auf eine Flip-Taste legen oder auf F3 oder F4. 
Aber Vorsicht: Wenn man V14-Verknüpfungen hat (Personen- und andere Stammsätze), dann diese Methode nicht benutzen! Für den Fall wurde eine andere entwickelt, die Sie mit dem folgenden Link einschalten können:  `Bearbeitung im Anzeigefeld aktivieren`
Gestartet wird dann der FLEX  dispedit.flx, der bei jedem Kategoriesystem funktioniert. 
Tip:
Für das externe Bearbeiten von Daten im UTF8-Zeichensatz (Unicode) gibt es  utf8edit.flx. 

Beispiel 3:
Die aktuelle Ergebnismenge permanent speichern, um sie später neu einlesen zu können. 

open x ABC       // beliebiger Dateiname ABC 
wri U n in       // U = Erg.Mengenname,  in = Liste der Satznummern der aktuellen Erg.Menge 
close x

Das spätere Wiedereinlesen geht so: 
read set ABC   

 *************************************************************** 

 NUR acon

datafile sei eine `Externdatei` des Typs .ADT , eine Grunddatei der Struktur .ALG oder sogar eine Datenbankdatei des Typs .ALD.  acon (genauer gesagt das Programm `acon`) erkennt die Stuktur selbständig (bei .ALD-Dateien werden gelöschte Sätze übergangen)! Die Sätze sollen eingelesen und gespeichert werden. Dabei soll jeder Satz noch vorbearbeitet werden. Hier nur das Gerüst, damit es übersichtlich bleibt: 
 .... 
read datafile	// QuellDatei wird geöffnet, erste Satz wird eingelesen 
:loop 
...		// Vorbearbeitung durch beliebige Befehle 
 put		// Satz wegschreiben 
read		// nächsten Satz einlesen 
if ok jump loop	// wenn noch einer da war, Sprung nach :loop 
...		// weitere Befehle oder Ende des Auftrags

Diese Arbeitsweise läuft bei a99 leider anders: 

open datafile	// QuellDatei wird geöffnet, noch nichts gelesen 
fetch rec 
:loop 
...		// Vorbearbeitung durch beliebige Befehle 
put		// Satz wegschreiben 
fetch rec	// nächsten Satz einlesen 
if not cancel jump loop	// wenn noch einer da war, Sprung nach :loop 
...		// weitere Befehle oder Ende des Auftrags

?E.ADT=h xeadt 
?if no=h xif 
?show list=h xshow 
?Register=h xa 
?erase off=h xerase 
?fts.flx=x var P "flex\\fts.flx"\help 
?andere Wirkungsweise=h xread=NUR acon 
?Bearbeitung im Anzeigefeld aktivieren=X dispedit 
?srx=h xsrx=Beispiel 3 
?fetch rec=h xfetch=fetch r 
?Externstruktur=h ac0-0#448 
?Externdatei=h ac0-0#448 
?acon=h acon