4D v16.3

APPLY TO SELECTION

Home

 
4D v16.3
APPLY TO SELECTION

APPLY TO SELECTION 


 

APPLY TO SELECTION ( Tabellenname ; Anweisung ) 
Parameter Typ   Beschreibung
Tabellenname  Tabelle in Tabelle für die Anweisung
Anweisung  Anweisung in Eine Code-Zeile oder eine Methode

Der Befehl APPLY TO SELECTION wendet für den laufenden Prozess eine Formel auf alle Datensätze der aktuellen Auswahl der Tabelle Tabellenname an. Anweisung kann eine Zeile Code oder eine Methode sein. Ändert Anweisung nur einen Wert in einem Datenfeld der Tabelle Tabellenname, werden die Datensätze automatisch gesichert. Werden keine Datenfelder geändert, werden die Datensätze nur sequentiell gelesen. Sie sind dann für andere Prozesse nicht gesperrt.
Ist die aktuelle Auswahl leer, hat APPLY TO SELECTION keine Auswirkung. Bei einer automatischen Verknüpfung kann Anweisung auch ein Datenfeld aus einer verknüpften Tabelle enthalten.

Die Ausführung von APPLY TO SELECTION wird in einem gesonderten Fenster durch einen Ablaufbalken angezeigt. Der Benutzer kann die Operation in diesem Fenster abbrechen. Rufen Sie vor diesem Befehl den Befehl MESSAGES OFF auf, wird der Ablaufbalken nicht angezeigt.

Mit APPLY TO SELECTION können Sie Information von einer Auswahl an Datensätzen sammeln, z.B. eine Summe oder eine Auswahl ändern. Sie können beispielsweise den ersten Buchstaben eines Datenfeldes in Großschreibung umwandeln. Verwenden Sie diesen Befehl innerhalb einer Transaktion, können Sie alle Änderungen durch Abbrechen der Transaktion rückgängig machen.

4D Server: Der Server führt in Anweisung übergebene Befehle nicht aus. Jeder Datensatz der Auswahl wird zum Ändern zur Arbeitsstation zurückgesendet.

Folgendes Beispiel wandelt alle Namen der Tabelle [Employees] in Großbuchstaben um:

 APPLY TO SELECTION([Employees];[Employees]Last Name
 :=Uppercase([Employees]Last Name))

Ist ein Datensatz während der Ausführung von APPLY TO SELECTION gesperrt und wird geändert, wird er nicht gesichert. Alle gesperrten Datensätze werden in der Menge LockedSet abgelegt. Prüfen Sie diese Menge nach der Ausführung von APPLY TO SELECTION auf gesperrte Datensätze. Folgende Schleife wird ausgeführt, bis alle Datensätze geändert sind:

 Repeat
    APPLY TO SELECTION([Employees];[Employees]Last Name:=Uppercase([Employees]Last Name))
    USE SET("LockedSet") ` Wähle nur die gesperrten Datensätze
 Until(Records in set("LockedSet")=0)
  ` Beende, wenn es keine gesperrten Datensätze mehr gibt

Dieses Beispiel verwendet eine Methode:

 ALL RECORDS([Employees])
 APPLY TO SELECTION([Employees];M_Cap)

Klickt der Benutzer im Ablaufbalken auf die Schaltfläche Stop, hat die Systemvariable OK den Wert 0 (Null), sonst den Wert 1.



Siehe auch 

EDIT FORMULA
Einführung in Mengen

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Auswahl
Nummer: 70

Dieser Befehl ändert die Systemvariable OKDieser Befehl ändert die Systemmenge LockedSetThis command can be run in preemptive processesIm remote Modus anderes Verhalten

 
GESCHICHTE 

Geändert: 4D v11 SQL

 
ARTIKELVERWENDUNG

4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)