APPLY TO SELECTION

4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next

Version 3


APPLY TO SELECTION ({Tabellenname; }Formel)

ParameterTypBeschreibung
TabellennameTabelleZu bearbeitende Tabelle oder
Haupttabelle ohne Angabe
Formel4D AusdruckFormel, die auf die Auswahl angewendet
werden soll

Beschreibung

Der Befehl APPLY TO SELECTION wendet für den laufenden Prozess eine Formel auf alle Datensätze der aktuellen Auswahl der Tabelle Tabellenname an. Formel kann eine Zeile Code oder eine Methode sein. Ändert Formel 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 Formel auch ein Datenfeld aus einer verknüpften Tabelle enthalten.

Tabellenname ist optional. Wird der Parameter nicht angegeben, bezieht sich APPLY TO SELECTION auf die Haupttabelle.

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. Der Befehl bearbeitet die Datensätze immer vom ersten Datensatz in der Auswahl bis zum letzten. 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 Formel übergebene Befehle nicht aus. Jeder Datensatz der Auswahl wird zum Ändern zur Arbeitsstation zurückgesendet.

Beispiele

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

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

2. 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 durchlaufen, 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 

3. Dieses Beispiel verwendet eine Methode:

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

Systemvariablen oder Mengen

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

Referenz

EDIT FORMULA, Einführung in Mengen.

Anwendung des Befehls

Formula Editor


4D - Documentation   Français   English   German   4D Programmiersprache, Befehle nach Themen   4D Programmiersprache, Befehle alphabetisch   4D Programmiersprache, Konstanten nach Themen   Back   Previous   Next