Version 11 (Geändert)
ARRAY TO SELECTION (Array; Feld{; Array2; Feld2; ...; ArrayN; FeldN})
Parameter | Typ | Beschreibung | |
Array | Array | Array, das in die Auswahl kopiert | |
werden soll | |||
Feld | Datenfeld | Feld, das die Array-Werte erhält |
Beschreibung
Der Befehl ARRAY TO SELECTION kopiert eine oder mehrere Arrays in eine Auswahl von Datensätzen. Alle angezeigten Datenfelder müssen zur gleichen Tabelle gehören.
Besteht zur Zeit des Aufrufs eine Auswahl, werden die Array-Elemente in der Reihenfolge des Array und der Datensätze übertragen. Gibt es mehr Elemente als Datensätze, werden neue Datensätze angelegt. Sowohl die neuen als auch die bestehenden Datensätze werden automatisch gesichert. Alle Arrays müssen dieselbe Anzahl Elemente enthalten. Sind die Arrays von unterschiedlicher Größe, wird ein Syntax Fehler generiert.
Dieser Befehl führt das Umgekehrte von SELECTION TO ARRAY aus. ARRAY TO SELECTION akzeptiert jedoch nicht Datenfelder aus verschiedenen Tabellen. Das gilt auch für verknüpfte Tabellen, selbst wenn sie automatisch sind.
WARNUNG: Dieser Befehl ändert die aktuelle Auswahl und den aktuellen Datensatz. Benutzen Sie ihn daher mit großer Sorgfalt. Sind beim Aufruf von ARRAY TO SELECTION Datensätze gesperrt, werden diese nicht gesichert. Die gesperrten Datensätze legt 4th Dimension in der Menge LockedSet ab. Diese Menge kann nach dem Ausführen des Befehls überprüft werden.
4D Server: Der Befehl wurde für 4D Server optimiert. Arrays werden vom Client-Rechner zum Server gesendet. Die Datensätze werden auf dem Server-Rechner geändert oder erstellt. Da diese Anfrage synchron bearbeitet wird, muss der Client-Rechner warten, bis die Operation erfolgreich abgeschlossen ist. Gesperrte Datensätze werden in der Multi-User bzw. Multi-Prozessumgebung nicht überschrieben.
Beispiel
Im folgenden Beispiel legen die beiden Arrays asLastNames und asCompanies Daten in die Tabelle [People]. Werte aus dem Array asLastNames werden in das Datenfeld [People]Last Name gelegt, Werte aus dem Array asCompanies in das Datenfeld [People]Company:
ARRAY TO SELECTION(asLastNames;[People]Last Name;asCompanies;[People]Company)
Referenz