4D v14.3ARRAY TO SELECTION |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
ARRAY TO SELECTION
ARRAY TO SELECTION
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. Hinweis: Da dieser Befehl neue Datensätze erstellen kann, berücksichtigt er nicht den evtl. vorhandenen Status Nur-Lesen der Tabelle. Weitere Informationen dazu finden Sie im Abschnitt Überblick zu Datensatz sperren. 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. Übergeben Sie den Parameter *, führt 4D die entsprechende Zeile der Anweisung nicht sofort aus, sondern legt sie stattdessen in den Speicher; auf diese Weise können Sie Zeilen, die mit * enden, stapeln. All diese auf Ausführung wartenden Zeilen werden durch eine abschließende Anweisung ARRAY TO SELECTION ohne den Parameter * ausgeführt. Aus diesem Grund lässt sich der Befehl jetzt ohne weitere Parameter aufrufen. WARNUNG: Verwenden Sie ARRAY TO SELECTION mit Vorsicht, da er die Information in vorhandenen Datensätzen überschreibt. Ist beim Aufruf von ARRAY TO SELECTION ein Datensatz durch einen anderen Prozess gesperrt, wird er nicht geändert. Gesperrte Datensätze werden in die Prozessmenge mit Namen LockedSet gelegt. Diese Menge kann nach dem Ausführen des Befehls überprüft werden. Hinweis: Dieser Befehl berücksichtigt nicht den Status Nur-Lesen bzw. Lesen-Schreiben der Tabelle zum jeweiligen Feld. 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. 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) Dieses Beispiel dupliziert die Auswahl der Datensätze: ARRAY TEXT(a1;0) |
EIGENSCHAFTEN
Produkt: 4D
GESCHICHTE
Geändert: 4D v11 SQL SIEHE AUCH
SELECTION TO ARRAY ARTIKELVERWENDUNG
4D Programmiersprache ( 4D v14 R2) Geerbt von : ARRAY TO SELECTION ( 4D v11 SQL Release 6) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||