`Register` 
set  :  Einstellung diverser Eigenschaften

Statt  set  kann man auch  switch  schreiben, mit gleicher Wirkung (ab V25.5). Empfohlen wird aber nur noch  set.

Mit [perm] sind diejenigen Setzungen gekennzeichnet, die in a99/alcarta über den FLEX hinaus gültig sind, also bis zum Ende der Sitzung oder einer weiteren Änderung. 
Ist acon angegeben, gilt der Befehl auch für acon, d.h. für das Konsolprogramm  acon. 
 
set ...    acon
Setzung diverser Werte für den weiteren Verlauf. 
Wenn hinter set nichts steht, wird der Inhalt der `iV` genommen. Steht auch dort nichts, passiert nichts. 
 
Folgende Werte können eingestellt werden: 

set aN	N=0,1,2,3,4,5    acon   [a99 erst ab V34.1] 
Auflösung der V14-Stammsatznummern, d.h. Ersetzung der Nummern oder Kürzel durch Klartexte. 
(Dies ist also keine echte Setzung, sondern bewirkt sofort die Auflösung der Nummern im aktuellen Satz)
Dabei gibt es die Modalitäten laut Kap. 10.2.6.8 des Systemhandbuchs: 
	Wenn im Datensatz eine Angabe wie _NNN steht, dann bewirkt der Wert 
	0 : Ersatz von _NNN durch den Klartext, hinter _NNN folgende Zeichen werden beseitigt 
	1 : dasselbe, aber wenn hinter _NNN noch Zeichen folgen, bleiben diese stehen 
	2 : wie 0, aber das Zeichen '_' bleibt stehen (sinnvoll für Kontrollzwecke) 
	3 : wie 1, aber das Zeichen '_' bleibt stehen 
	4 : _NNN_ bleibt stehen, der Klartext wird dahinter eingefügt, nachfolgende Zeichen verschwinden 
	5 : wie 4, aber nachfolgende Zeichen bleiben stehen. 
	-1 : Keine Ersetzung (default)
	Wenn in einer Kategorie mehrere Identnummern vorkommen können, sind nur 1, 3 oder 5 sinnvoll. 
D.h.  set a1  ist der Normalfall: alle Nummern ersetzen durch Klartexte. 
(Hinweis: In a99 macht dasselbe der veraltete Befehl  `export R`, dabei gilt stets  N=1.) 
Wird NUR gebraucht, wenn man mittels  write #nnn  Kategorien ausgeben will und dabei der Klartext rauskommen soll. 
Anschließend kann man den Satz nicht mit put zurückspeichern (wird verhindert). 
Wenn man also im selben Job Änderungen am Satz vornimmt, dann VOR dem Befehl  set a1  den Befehl  put  geben. 

set aüberschrift
Überschrift des nächsten `aresqa`-Fensters setzen.  Fehlt überschrift, wird der Inhalt der iV genommen. 
(Aufpassen, daß  überschrift  nicht mit einer Ziffer beginnt, siehe oben!) 
 
set b
Bookmark : Lesezeichen auf den aktuellen Satz setzen. (Anzeigen: `show b`) 
 
set BiText   [perm]
Textelement i der Benutzeroberfläche ändern, neuer Inhalt ist dann  Text .  Fehlt  iText, wird der Inhalt der iV genommen. 
i ist eine Nummer (0< i <500) der User-Interface-Datei UIFEGER (bzw. UIFEENG bei englischer Oberfläche). Nicht alle darin stehenden Textelemente lassen sich während des Programmlaufs ändern, so z.B. nicht diejenigen der Menüs und der Buttons, wohl aber die der Meldungen, auch die Buttons der Unterfenster, bevor diese erstmalig geöffnet werden. Die Änderungen gelten nur während der Sitzung, d.h. werden nicht in der Datei gespeichert. 
ABER: Der  Text  darf höchstens so lang sein wie der Originaltext, der in der UIF-Datei steht, er wird sonst gekürzt. Das  bedeutet auch: kommt eine Nummer nicht in der UIF-Datei vor, kann man sie nicht mit diesem Befehl setzen. 

set Bi- / Bi+  [perm]
Menüelement i der Benutzeroberfläche unwirksam (grau) machen bzw. wieder wirksam. 
Die Nummer  i  ist die Nummer des Menüelements in der UIF-Datei, z.B. 263 für das Element "DOS-Programm" im Menü Datei. 
Anm.: Nur wirksam bei Unterpunkten, nicht bei den Überschriften. Auch auf Buttons nicht anwendbar. 

set C   [perm]
Copy-Verzeichnis setzen : Inhalt der iV wird als Verzeichnisname für Sicherheitskopien aufbewahrt, und zwar in der Variablen  DbBack der INI-Datei. Wird in _BACKUP.FLX gebraucht. 
Hinweis: Mit  var C  kann man sich den aktuellen Namen ausgeben lassen.

set c0/c1/c2   [perm]    Achtung:  abweichend in acon  `switch coding`
Eingabedaten sind ASCII (DOS) / ANSI (Windows), wirkt bei  `e.adt` und `insert`-Befehlen 
Default ist 1, weil allegro-Datenbanken fast alle intern mit DOS-ASCII arbeiten, Eingabedaten dagegen oft im Windows-Code sind! (Das ab 2006 existierende "Neutralmodell" mit N.CFG verwendet intern Windows-Code.) 
Wert 2 bedeutet: Keine Umcodierung. 
In acon  gibt es für diese Funktion den Befehl  `switch coding`. 
Die Umcodierung wird auf den iV-Inhalt angewendet, wenn ein  insert  diesen in ein Datenfeld überführt. 
Die Setzung wirkt auch auf die mit  `update/upload`  eingelesenen Daten!  set c1  setzen, wenn diese ANSI sind, intern aber ASCII verwendet wird. 
Auswirkung auch auf die Funktion `file` (= Ausgabefunktion "Datei | Anzeige speichern als ...": Der Text kommt in ANSI heraus, wenn der Wert 1 gesetzt ist, normalerweise also in ASCII. 
Wichtig: Beim Einlesen von Unicode-Daten hilft der Befehl  `xcode u`  zur Umwandlung in den Interncode. 
Wenn mit `help`dateiname  eine Textdatei eingelesen wird, dann erfolgt beim Wert 0 die ASCII->ANSI-Umcodierung, d.h. das ist der Normalfall, mit Wert 1 kann man ANSI-TXT-Dateien anzeigen lassen. 

set c+/c-   [perm]   Default: c-
	Das Zeichen \ soll in eingebetteten Variablen in RTF-Dateien (Hilfetexten) verdoppelt und damit angezeigt werden, sonst wird es nicht angezeigt.

set cfanzahl   [perm]
Füllzeichen-Anzahl setzen: Der Wert f der CFG wird neu gesetzt. Sinnvoll, wenn man einen Neusatz erzeugt, von dem man schon weiß, daß er mehrfach verlängert werden wird. Stattet man ihn gleich mit einer Anzahl von hundert oder mehr Füllzeichen aus, verhindert dies, daß jedesmal der Satz verlagert werden muß. 
Hinweis: Mit  var cf  kann man sich den aktuellen Wert ausgeben lassen.

set d/dn/db/d+/d-   [perm]
Das Anzeigefeld wird auf normale Größe bzw. auf Übergröße (big) eingestellt. Fehlt 'n' oder 'b', dann wird der aktuelle Zustand in den anderen umgeschaltet. 
Tip: Rechte Maustaste auf einem Button klicken: schaltet zwischen normal und breit. 
Mit + und - wird die Schriftgröße im Anzeigefenster erhöht bzw. gesenkt. Das funktioniert nur, wenn im RTF-Text der Anzeige keine zusätzlichen Befehle \fsnn vorkommen, denn diese haben dann Vorrang! Die Grundgröße wird in den Dateien DISPHEAD.RTF, HELPHEAD.RTF etc. gesetzt. Bei RTF-Hilfedateien funktioniert die Sache nicht, denn in diesen kommen normalerweise viele \fs-Befehle vor. 
Hinweis: Das Gesamtfenster wird mit  set wm  maximiert (Vollbild), mit  set wn  normalisiert, mit  set wi  minimiert, s.u.

set D+ / set D-   [perm]   S 
	Schrift im Auswahlfeld etc. um eine Stufe vergrößern / verkleinern
set DDataFont=CharSet   [perm]
Schrift und Zeichensatz im Auswahlfeld werden umgeschaltet, zugleich gilt diese Einstellung für das Schreibfeld und für die Index- und Kurzlistenfenster. 
Für DataFont kann man jeden erlaubten Fontnamen einsetzen, z.B. "allegro Lucida Console" oder "Courier New", für CharSet einen der folgenden Zahlenwerte: 
0   ANSI 
1   DEFAULT 
2   SYMBOL 
77  MAC 
128 SHIFTJIS 
129 HANGUL 
134 GB2312 [chines.] 
136 CHINESEBIG5 
161 GREEK 
162 TURKISH
163 VIETNAMESE
177 HEBREW
178 ARABIC
186 BALTIC 
204 RUSSIAN 
222 THAI
238 EASTEUROPE (gemeint ist Mitteleuropa)
255 OEM 
Weitere Namen und Werte kann man herausbekommen, wenn man per Menü "Option / Datenfont" eine Einstellung vornimmt und nach Beenden des Programms nachsieht, was in der INI-Datei unter  DataFont bzw. CharSet steht. (In der INI-Datei muß dazu SetSize=1 stehen.) 

set e0/e1   [perm]
Die Editor-Fehlermeldungen werden aus- bzw. eingeschaltet

set env name=value   [perm]
Die Environment-Variable name wird auf den Wert value gesetzt. Dies gilt jedoch nur, während a99 läuft, und nur für den Prozess a99, auch nicht für ein mit call aufgerufenes Programm. 
Begrenzt kann man sich also Daten im Env.-Speicher ablegen. 
(Umgekehrt: --> `get env`)

set Err
Fehlerwert und Fehlermeldungstext zuruecksetzen. Anschliessend gilt  if yes
Den Meldungstext erhält man mit var Err. 

set f1/f2/f0   [perm]
`Flips` im Anzeigefeld können mit Einzel- bzw. nur mit Doppelklick aktiviert werden bzw. überhaupt nicht. Default ist 1. 

set F1/F0   [perm]
Formularmodus: 1 = alles übernehmen beim Verlassen, 0 = Nutzer muß bei jedem Feld die Enter-Taste drücken.  Default ist 1 (früher gab es nur 0) . 

set getlock on/off  [nicht perm]   acon   ab V32.4,  a99 ab V33.5 
Das Sperren geschieht bei  on  dann automatisch genau VOR dem tatsächlichen Laden des nächsten Satzes. 
Nach dieser Setzung sind in acon  get edit  und  set lock  unnötig (wenn auch unschädlich) 
Dies ist aus Sicherheitsgründen so eingerichtet: damit zwischen Laden des Satzes und Sperren keine zeitliche Lücke entstehen kann. Das kann in kritischen Situationen, wenn man ganz sicher gehen will, schon mal erwünscht sein. Datenschäden sind jedoch auch sonst nicht zu befürchten, es kann nur - sehr selten - mal sein, daß zwischen dem Laden und dem Speichern jemand anders einen Satz verändert hat. Dann gibt sowohl a99 wie acon eine Meldung aus, jemand anders sei schneller gewesen, und der Satz wird nicht gespeichert. Besonders in  acon  wird man solche Situationen gern vermeiden wollen. 
Wichtig: Nach einem  set getlock on  unbedingt darauf achten, einen geladenen Satz mit  put unlock  abzuspeichern oder aber mit  set free  wieder ausdrücklich freizugeben, denn von selber passiert das nicht.

set h
History : aktuellen Satz zur Menge der "Vorher angezeigten Daten" hinzufügen

set Hm :  m=0/1 : kursiv/grauer Hintergrund  [ab V35.6], Default ist 0
Hintergrund : Auswahlfeld bei Anzeige des Reservespeichers: 0=Kursivschrift / 1=grauer Hintergrund 
(1 wird empfohlen : kostet weniger GDI Ressourcen)

set iZtext     [perm]
Damit setzt man die Kopfzeilen für das Kurzanzeigefenster. Dieses hat drei Varianten: 
A  Ergebnismenge 
B  Offline-Datei 
C  ViewListe 
Jedes hat drei Kopfzeilen:  1. Fenstertitel, 2. Datei- oder Erg.Mengenname, 3. Hinweiszeile (bei Erg.Menge: Struktur der Kurzzeile) 
Deshalb können bis zu neun Zeilen gesetzt werden, d.h. die Ziffer Z geht von 1 bis 9: 
A  1  2  3 
B  4  5  6 
C  7  8  9 
Will man z.B. die mittlere Zeile für eine ViewListe setzen, ist das die Ziffer 8. 
Zum Löschen einer Setzung:  set iZ  ohne Text, mit Z=1...9. 
Die Setzung ist auch über die iV möglich (dadurch wird die Sache flexibel) 
Beispiel:
var "i8text"    Dateiname des ViewListen-Fensters 
ansi 
set 

set I0/I1   [perm]   Standard: 1
Beim Eintritt in ein Formular-, Eingabe- oder ask-Feld wird dessen gesamter Inhalt selektiert (markiert) bzw. deselektiert. Das erstere war bis V29.4 der Normalfall und es ging gar nicht anders, obwohl es gewöhnungsbedürftig war. Das zweite ist ab V29.5 der Normalfall! Eine Ausnahme ist mit Vorbedacht nur das Schreibfeld: wenn man es mit Tab betritt, wird der Inhalt markiert, so daß man ihn mit Entf sofort löschen kann. 
Tip: Wer diese Neuerung nicht will, schreibt  set I0  in seinen  _start.flx.

set k1/k0   [perm]   Standard: 0    [ab V34.1]
`Offline-Speicher` aus-/einschalten, d.h. dem Nutzer die Möglichkeit einräumen (k0) bzw. vorenthalten (k1), zu vorher veränderten Sätzen zurückzukehren und den Button [Wechseln] nutzen zu können. Vom Betreuer aus wohlüberlegten Gründen einzusetzen. 

set L1/L0   [perm]   Standard: 0
	Der Copy-Befehl im Index wandelt Klein- in Großbuchstaben um (wenn 1) bzw. nicht.  

set lock   acon
set unlock   acon 
	auch: set rec lock/free   a99

Datensatz für Schreibzugriff blockieren (lock) bzw. freigeben  (unlock) 
Mit  if yes ...  bzw.  if no ...  kann man testen, ob es geklappt hat. 
Statt mit  set unlock  kann man einen Satz auch mit  `put unlock`  wieder freigeben, d.h. er wird dann geschrieben, obwohl er gesperrt ist. 
Automatisch, etwa vor dem Laden des nächsten Satzes oder am Ende des Jobs, wieder freigegeben wird der Satz nur in acon, aber in a99 nicht, d.h. da muß man das mit  set unlock  selber tun. 
Hinweis: Bei acon kann man einen Satz schon beim Einlesen mit `get` sperren lassen:  get edit ... 
Wichtige Zusatzfunktion: Sperren ohne Laden! Hinter beide Befehle kann man noch  #Num  setzen, mit einer internen Satznummer  Num . Fehlt diese, wird der iV-Inhalt genommen, d.h man kann z.B. schreiben, wenn in  $nummer  die Satznummer steht: 
var $nummer\set lock # 
Noch eine Zusatzfunktion: Im Anschluß an diese Befehle (auch  get edit  und  find #... sowie  if Lock) kann man die Sondervariable  sL  auswerten, aus der noch etwas mehr zu entnehmen ist:  var sL
Werte von sL (einige treten nur bei  set lock  auf:  (Werte <1 zeigen Fehler an!)
   0 = OK, Sperren hat geklappt bzw. Satz ist gesperrt (if Lock) 
  -1 = lock geht nicht (TBL gesperrt; mit  if tbl ... checken) 
  -2 = .TBL-Eintrag falsch (Dann .tbl erneuern) 
  -3 = .ALD-Datei öffnet nicht 
  -4 = Falsches Byte am Satzbeginn (Datei- oder .tbl-Fehler) 
  -6 = Keine Schreibberechtigung 
  -8 = Satznummer <0 oder zu groß 
   1 = Satz ist nicht gesperrt (nach if Lock) 
   8 = Satz ist gesperrt (nach if Lock) 
   9 = Satz ist geloescht (Sperren geht dann nicht) 

set Logging off/on    nur acon
Das Logging beim Speichern abschalten/einschalten. 
Wird z.B. genutzt in  update.job  beim Einspeisen einer LOG-Datei.

set mcode   [perm]
Der Code für das Flip-Markierungszeichen wird auf code gesetzt. Standard: 160, das "nichtbrechende" Leerzeichen.

set M xyz    [perm]
Das Temp-Verzeichnis (%%temp%% oder  DbAux  aus der INI-Datei) wird auf xyz gesetzt. 
Wenn xyz fehlt, wird der Inhalt der iV genommen. 
Auf diesem Verzeichnis kommen die Hilfsdateien zu liegen, die sich das Programm für die Erg.Mengen anlegt. 

set N0/N1/N2   acon   [perm]
Der Modus für das Speichern neuer Sätze wird auf 0, 1 oder 2 gesetzt. Standard:  2 bzw. Wert von NewMode in der INI-Datei.

set nnummer   acon   [perm]
Die Dateinummer für neue Sätze wird gesetzt (0 < nummer < 256).  Standard:  1 bzw. der Wert von InputFile in der INI-Datei. 
	Gleichwertig:  input nummer

set oModPos      (keine Leerzeichen dazwischen!)    [perm]
Die Sortiereinstellungen für Erg.Mengen ändern. 
Mod  kann a oder d sein (für ascending bzw. descending = aufsteigend bzw. absteigend, oder n = Satznummer), 
Pos muß eine Zahl sein, beginnend mit 0, für die Position in der STL-Zeile, wo die Ordnung stattfinden soll. Dies entspricht den Werten SortMod und SortPos in der INI-Datei ( 0=a und 1=d ).  
Wenn die Sortierwerte in einer Variablen $s oder $o stehen, z.B.  $s=a3 bzw. $o=oa3, kann man schreiben: 
var $s    bzw.   var $o
set o                  set

set O     NUR acon   [perm] 
Operator-Code setzen (wirksam beim Speichern und Löschen von Sätzen) 

set P   [perm]
Druckseite einrichten (wie Menü "Datei | Seite einrichten") 

set pX    acon   [perm]
Primärschlüssel für update wird an der Sprungmarke  #-X  bestimmt. 
Wurde in der Sitzung noch kein solcher Befehl gegeben, wird derjenige Schlüssel als Prim.Schlüssel benutzt, der sich als erster aus der Abarbeitung der Indexparameter ergibt. Dieses Verhalten kann auch wieder eingestellt werden, indem man X wegläßt. 
Aber Vorsicht: der ak-Befehl wird nicht abgearbeitet! Man kann daher nur solche Sprungmarken verwenden, wo nicht mit der Variablen  #u1 gearbeitet wird.  Siehe auch:  `var p` (dort wirkt sich diese Setzung ebenfalls aus, ab V27.2) 

set qnum
Im Offline-Speicher (Alt+q) auf den Satz mit der laufenden Nummer num positionieren und diesen anzeigen. 
Hinweis: Mit first off / last off kann man auf den ersten bzw. letzten Offline-Satz positionieren. 
Hinweis: Von Hand kann man zum n-ten Offline-Satz gehen, indem man in der Suchbefehlszeile  %%n  gibt.

set rec lock     siehe ->  `set lock`

set recn     NUR acon
Die interne Nummer des aktuellen Satzes wird auf die Zahl gesetzt, die momentan in der iV steht. 
Anwendung auf eigene Gefahr! Anschließendes Abspeichern mit  put  überschreibt den Satz, der zu der gewählten Nummer gehört. 
Sinnvoll nur, damit in den Exportparametern die Sonderkategorie  #nr  einen gewünschten Wert hat.

set Rname    [perm]
Die aktuelle Ergebnismenge erhält den Namen name 
Hinweis: Die Satzanzahl (Erg.Mengengröße) wird automatisch davorgesetzt, man braucht nur den Namen zu setzen.
Wenn name z.B. in einer Variablen #uxy steht, dann geht es so: 
var "R" #uxy 
set 
Wie das angewendet wird, sieht man in  `rset.flx`. 
Auf den Namen kann mit  find :name  später zurückgegriffen werden, um die Erg.Menge erneut zu aktivieren; siehe `find-Befehl`.

set s0/s1    [perm]
Der Subfield-Hilfemodus wird aus- bzw. eingeschaltet (Einstellung "SubHelp" in a99.ini)

set S0/S1    [perm]
Special Logging off / on 
In die Datei  DbName.slo  werden bei S1 Testmeldungen geschrieben, die sich aus mehreren internen Vorgängen beim Speichern eines Satzes ergeben. Nützlich nur, wenn man sich mit den Quellcodes von a99 auskennt. 

set tbl loc/fre      acon [perm] 
.TBL-Datei (sog. Satztabelle) blockieren/freigeben
Das macht man z.B. zweckmäßigerweise, wenn man im FLEX eine Nummernvergabe ausführen will. Denn sonst könnte jemand anders zufällig gleichzeitig denselben Vorgang machen (z.B. Inventarisierung), und dann könnte es zu Doppelnummern kommen. 
Denkbar ist der Einsatz auch, um im laufenden Betrieb eine Datenbankkopie zu machen, damit während der Kopierzeit keine Schreiboperationen möglich sind. 
Hinweis: Wenn  set tbl loc  nicht geht, weil die Datenbank schon gesperrt ist, wird der Versuch nach 10 Sekunden aufgegeben und die Bedingung no gesetzt, d.h. man kann die Situation mit  if no ...  abchecken. 

set tbl c1/c0  [perm]   Startzustand ist  c0 
Öffnungszustand der Datenbank regelmäßig prüfen 
Unter Win'10 kann es sinnvoll sein, zur Vermeidung von plötzlichem Versagen des Datenbankzugriffs bestimmte interne Prüfungen einzuschalten. Ein bekanntes Symptom ist, daß der Index auf einmal leer erscheint. Dann empfiehlt es sich, in den _start.flx  dies einzubauen:  set tbl c1 

set Timestamp off/on    nur acon
Die Zeitstempelung beim Speichern abschalten/einschalten. 
Wird genutzt in  update.job  zum Einspeisen einer LOG-Datei.

set u xyz   acon  (außer z )
Modus setzen  für `update`. x und y wie bei DOS-UPDATE  
(siehe `Handbuch`, Kap. 9), also z.B.  set u 41. 

z=0 bedeutet: Keine Speicherung, sondern Zwischenlagerung im Offline-Speicher. Dort kann man sich die Daten erst einmal anschauen. Die Speicherung kann anschließend über das Menü "Datei" erfolgen. Fehlt z, wird 1 angenommen, d.h. Echt-Update. 
Hinweis: Hinter dem u muß bei acon ein Spatium stehen, bei a99 nicht (aber es geht auch, ab V25.5). 

Der Wert für x bezieht sich auf die Art, wie Sätze behandelt werden sollen, die in der Datenbank schon vorhanden sind.
Dafür gibt es 5 Möglichkeiten: 
0	Satz einmischen, als wäre es ein neuer Satz 
1	Satz ersetzen 
2	Satz ignorieren 
3	nur neue Kategorien einmischen 
4	vorhandene Kategorien überschreiben

Der Wert für y bezieht sich nur auf Sätze, die noch nicht in der Datenbank vorhanden sind: 
0	Satz ignorieren 
1	Satz einmischen

set U1/U2/U0   acon   [perm]
`Unicode-Modus` setzen bzw. löschen. 
wenn 1 oder 2: eingelesene Daten werden als UTF-8-Codes interpretiert und in interne Codes verwandelt. Die Akzentvertauschung wird automatisch miterledigt. 
Dazu wird die Liste der u-Befehle in den Indexparametern benutzt. Die Ersetzung geschieht dann bei jedem  insert , jedoch nur bei echten Kategorien und bei #u1 und #u2, nicht bei #uxy-Variablen! Das ist notwendig, weil man mit den #uxy-Variablen oft Textinhalte unverfälscht transportieren will. 
Tip: Mit  xcode u  kann man jederzeit den aktuellen iV-Inhalt umwandeln lassen. 
Kommen einzelne UTF8-Codes nicht in der Liste vor, wird so verfahren: 
Bei U1: Entitätencodes &#nnn; daraus machen, Bei U2: UTF-8-Code so lassen. 
Achtung: nach der Einleseprozedur stets sofort zurücksetzen, sonst funktionieren nachfolgende Export-Umcodierungen nicht! 

set unlock   acon    siehe ->  set rec

set v1 
Entfern-Modus für die nächste ViewListe einschalten. Wenn mit   View name   dann eine ViewListe aufgemacht wird, können Zeilen entfernt werden. Dieser Modus wird nach dem Schließen der ViewListe wieder auf 0 gesetzt, muß also ausdrücklich vor jedem Öffnen einer ViewListe auf 1 gesetzt werden.

set vP 
Letzte Position in der aktuellen ViewListe wieder einstellen. Das ist nötig, wenn man einen per ViewListe gefundenen Satz bearbeitet und 
wieder gespeichert hat, um dann zur ViewListe zurückzukehren und diese an derselben Position wie vorher anzuzeigen.

set wm / wn / wi    [perm]
Fenster auf maximale Größe ("Vollbild") bzw. auf Normalgröße und -position setzen bzw. als Icon in die Taskleiste schicken. 
Zweimaliges  set wn  schaltet auf "Normalposition" (wie Menüfunktion "Datei / Normalposition")

set W xyz    [perm]
Das Arbeitsverzeichnis (Working Directory) wird auf xyz gesetzt. Wenn xyz fehlt, wird der Inhalt der iV genommen. 
Mit  if no ...  kann man checken, ob das nicht geklappt hat. Im Verzeichnisnamen xyz kann man / statt \\ verwenden. Ob man einen / oder \\ an das Ende setzt, ist unerheblich. Wenn man hinterher  var W  gibt,  kommt genau das raus, was man als xyz gesetzt hat.

set xab   acon    [perm]    ab V27
Die Umcodierung für das Suchen mit dem Befehl srx, also mit `regulären Ausdrücken` auf die p- bzw. q-Befehle der Index-, Display- oder Exportparameter setzen: 
a = i d x 	Index- / Display- / Exportparameter 
b = p q  	p- / q-Tabelle 
Falls nicht gesetzt : dann werden die Codes der Indexparameter benutzt, und zwar diejenigen, die das A in a wandeln. Bei der A-Konfiguration ist das die q-Tabelle, bei der N.CFG aber die p-Tabelle. 
Diese Setzung wird auch wirksam für die Befehle find _xyz_ bzw.  find ,xyz, und für   if %%xyz%%. 
ACHTUNG: Zu empfehlen ist, eine Setzung noch innerhalb desselben FLEXes wieder zurückzunehmen, und zwar mit schlichtem  set x   in den normalen, automatischen Zustand.
Hinweis: Testen kann man die Tabellen mit dem Befehl  `xcode` .

set Xc    [perm]    ab V29
Expansionsmodus (Satzübergreifende Suche). 
Der Code c kann 0, 1 oder 2 sein: 0: Expansionen beim Befehl `find` normalerweise ausgeschaltet (default), 1: automatische Expansion bei jedem Suchbefehl, 2: Expansions-Markierungen im Find-Menü sind gesetzt (default). 

set &zi     acon  [perm]    ab V34.1
`Persistenz-Register` i im Index z  einstellen (default: &z1).  

Ab V25.5 gibt es folgende auch in a99  (früher  switch  statt  set, geht aber auch noch) 

set download 1 / 2    acon    [perm]
	Download 1 / Download 2 einschalten. Es können 2 Download-Parameter und -Dateien definiert sein. Normalerweise ist Download 1 aktiviert. 
	Wenn erstmals  set download 2  gegeben wird, muß gleich darauf   export param ...  und  export file ...  folgen, damit dem Programm bekannt ist, was bei download  geschehen soll. Anschließende export- und write-Befehle laufen dann mit diesen Einstellungen ab, bis wieder  set download 1  kommt. Mit var e bzw. var E erhält man die Namen der Parameter bzw. der Exportdatei des gerade mit switch dow  eingestellten Downloads. 
Kurzform:  swi dow 1

set object 1 / 2    acon    [perm]
	Satz 1 / Satz 2  einschalten. Es gibt zwei interne Datensatz-Arbeitsspeicher. Normalerweise ist Satz 1 eingeschaltet, d.h. alle Aktionen werden in Satz 1 ausgeführt. Jederzeit kann man aber in einem Job auf Satz 2 schalten, einen Datensatz mit find , get oder read hineinholen, damit Aktionen durchführen und ihn auch mit put wieder speichern. Vorteil: Satz 1 ist die ganze Zeit noch vorhanden und muß nicht erneut geladen werden, sondern nur mit  set obj 1  wieder eingeschaltet. 
Empfehlung: Sicherstellen, daß im selben FLEX wieder auf Objekt 1 zurückgschaltet wird. Veränderung und Speicherung des Objekt 2 ist möglicherweise problematisch. Gedacht ist der Befehl hauptsächlich, um im FLEX schnell mal in einen anderen Satz schauen zu können und daraus etwas zu entnehmen. 
Kurzform:  swi obj 1  oder  set obj 1
Hinweis:  Mit  `copy obj 1`  kann man den Inhalt des ersten in den zweiten Satz kopieren. (V28.5)

-------------------------------------------------------------------

Drei weitere Optionen NUR in acon

set maxres i	  
	maximale Größe der Treffermenge bei find-Befehl 
	Als Default ist das Maximum von 260000 eingestellt, Minimum ist 1000) 
	Achtung: Zugleich wird die Erg.Menge leergemacht, was man als Trick nutzen kann. 

set maxlist i 
	Maximalzahl Zeilen für den list-Befehl (als Default ist 130000 eingestellt) 

set maxdown i 
	Maximalzahl Datensätze für download-Befehl (als Default ist 10000 eingestellt, Maximum ist 100000, Minimum ist 1000) 

------------------------------------------------------------------- 

NUR  acon

set Zanzahl 
	Maximal abzuarbeitende Zeilen des Jobs. 
	Sonderfall: 0 = unbegrenzt 
Die Abarbeitung des Jobs endet nach anzahl  Zeilen. Voreingestellt sind dafür 1000000 (1 Mio.). 
Fehlt die  anzahl, wird der iV-Inhalt genommen. 
Relevant ist dies eigentlich nur, wenn Schleifen auftreten: einerseits, um ein unendliches Rotieren der Schleife zu verhindern, wenn keine Endebedingung eingebaut ist oder diese nicht erreicht wird, andererseits, um eben ausnahmsweise mal ein sehr großes Vorhaben durchzuführen, bei dem enorm viele Daten eingemischt oder Unmengen von Einzelaktionen ausgeführt werden müssen. Wenn man die Anzahl beim besten Willen nicht nach oben abschätzen kann, setzt man einfach 0, dann wird die Abarbeitung wirklich erst nach der letzten Aktion enden, und wenn es viele Milliarden sind... 
Verwendet wird dieser Befehl in den Standard-Jobs  srch.job  und  update.job  für die Volltextsuche bzw. das Einspeisen neuer Daten. 

switch coding   0 | 1    (veraltet, s.u.) 
	Wirkt sich aus bei den Befehlen  list, write  und  qrix
	UND bei update/upload, wenn die Daten dann im Job gleich folgen, 
	statt aus einer Datei gelesen zu werden. 
Damit wird die Umcodierung der Registerzeilen und Kurztitelzeilen ein (default) - und ausgeschaltet. Nur wichtig, wenn die Datenbank in ASCII codiert ist,  die Ergebnisse aber in ANSI gebraucht werden oder umgekehrt. Den Wert 2 gibt es, anders als bei a99, bei acon nicht. 
Man setzt 0 bzw. 1  hinter den Befehl, um gezielt das Umcodieren aus- bzw. einzuschalten. 
Default ist 1: Wenn die o-Tabelle in der .Cpi-Datei  nachgeladen wird, erfolgt automatisch die Umcodierung nach ANSI. 
Für Kurzlisten kann auch die beim Befehl `list` vorgesehene Option coded zum einmaligen Umschalten der Ausgabe verwendet werden. 
Hinweis: Wenn man, wie im Paket PHPAC, sämtliche HTML-Ausgabedaten in Unicode (UTF-8) codieren will, nutzt man diese Sequenz: 

switch coding 0 
xport p p-unicod 
exp wX
Man schreibt diese drei Zeilen an den Anfang eines Jobs, aber zumindest die erste, dann wirkt sich "switch coding" nicht mehr aus! 

switch fam   NUR acon
	Bilde die Ergebnismenge aller Sätze, die mit dem aktuellen Satz verknüpft sind (Pica: "family") Nachfolgende get- und list-Befehle beziehen sich dann auf diese Ergebnismenge. Wenn es nur darum geht, eine Satzfamilie auszugeben, kann man schlicht exp fam sagen. 
ERROR wird gesetzt, wenn es keine Verkn. gibt. 
Man kann jederzeit zu der eigentlichen Erg.Menge  zurückschalten: 

switch resultset   NUR  acon
	Man ist wieder an derselben Position wie vor dem "switch fam". (Der vorher aktuelle Satz wird intern erneut geladen.) Dasselbe trifft bei nochmaligem "switch fam" zu: Das vormals aktuelle Familienmitglied wird wieder geladen. 
Die Konsequenz ist, daß man eine Erg.menge durcharbeiten und dabei zu jedem Satz alle verknüpften Sätze gleichfalls abarbeiten kann. Dabei kommt jeweils der Befehl  `next`  zum Einsatz. 

?iV=h xiV 
?show b=h xshow 
?e.adt=h xeadt 
?insert=h xinsert 
?get env=h xget 
?Register=h xa 
?update=h xupdate 
?flips=h flip 
?file=h xfile 
?help=h xhelp 
?rset.flx=h rset.flx 
?Handbuch=h ac9 
?put unlock=h xput= unlock 
?put=h xput 
?find-Befehl=h xfind 
?get=h xget 
?export R=h xexport=export R 
?switch=h xset#304 
?switch coding=h xset#304 
?list=h xlist 
?aresqa=h xaresqa 
?Unicode-Modus=h unicode 
?update/upload=h xupdate 
?regulären Ausdrücken=h xsrx 
?xcode=h xxcode 
?var p=h xcstring=rschl 
?copy obj 1=h xcopy 
?next=h xnext 
?find=h xfind 
?set lock=h xset=set lock 
?xcode u=h xxcode=xcode u 
?Offline-Speicher=h off 
?Persistenz-Register=h vb258#288