4D v16.3

Einführung in temporäre Auswahl

Home

 
4D v16.3
Einführung in temporäre Auswahl

Einführung in temporäre Auswahl  


 

 

Temporäre Auswahlen sind eine einfache Möglichkeit, mehrere Auswahlen gleichzeitig zu verwalten. Eine temporäre Auswahl ist eine sortierte Liste von Datensätzen für eine Tabelle in einem Prozess. Sie können dieser Liste einen Namen geben und sie speichern. So können Sie die aktuelle Auswahl mit der richtigen Sortierfolge und dem aktuellen Datensatz erhalten und später wiederverwenden.

Sie können temporäre Auswahlen mit folgenden Befehlen verwenden:

Sie erzeugen eine temporäre Auswahl mit den Befehlen COPY NAMED SELECTION, CUT NAMED SELECTION und CREATE SELECTION FROM ARRAY. Temporäre Auswahlen dienen in der Regel dazu, um in einer oder mehreren Auswahlen zu arbeiten, sie zu sichern und später eine sortierte Auswahl wiederherzustellen. Jede Tabelle in einem Prozess kann mehrere temporäre Auswahlen haben.

Eine temporäre Auswahl wird im Hauptspeicher erzeugt und kann jederzeit über den Befehl USE NAMED SELECTION wieder geladen werden. Mit dem Befehl CLEAR NAMED SELECTION geben Sie den belegten Speicherplatz wieder frei. Im Gegensatz zur Menge ist die temporäre Liste sortiert.

Hinweis: Die Kombination der Anweisung SET QUERY DESTINATION(Into named selection;namedselection) mit einem Suchbefehl, z.B. QUERY, lässt sich zum Erstellen einer temporären Auswahl verwenden. Weitere Informationen dazu finden Sie in der Beschreibung zum Befehl SET QUERY DESTINATION.

Temporäre Auswahlen sind auf lokaler, Prozess- oder Interprozessebene möglich.

Eine temporäre Auswahl ist lokal, wenn dem Namen das Dollarzeichen ($) vorangestellt ist. Ohne vorangestelltes Zeichen ist es eine temporäre Auswahl auf Prozessebene, mit den Zeichen größer als und kleiner als (<>) eine temporäre Auswahl auf Interprozessebene.

Eine temporäre Auswahl auf Interprozess-Ebene hat dieselbe Reichweite wie eine Interprozess-Variable. Sie können von jedem Prozess aus darauf zugreifen.
Mit 4D im Remote Modus und 4D Server ist eine temporäre Auswahl auf Interprozess-Ebene nur für Prozesse des Clients verfügbar, die sie erstellt hat. Sie ist für andere Client-Rechner nicht verfügbar.

Hinweis: Diese Schreibweise gilt für Windows und Mac OS. Auf Mac OS können Sie auch das Diamond-Zeichen (Wahl- + Umschalttaste + v) verwenden.

Eine temporäre Auswahl auf Prozessebene ist in dem Prozess, der sie erstellt hat, und auf dem Server verfügbar.

Eine lokale temporäre Auswahl ist nur für den Prozess verfügbar, der sie erstellt hat, und auf dem Server nicht sichtbar.

Warnung: Zum Erstellen einer temporären Auswahl ist der Zugriff auf die Auswahl der Tabelle erforderlich. Da Auswahlen auf dem Server liegen und ein lokaler Prozess nicht auf Server-Daten zugreifen kann, sollten Sie in in lokalen Prozessen keine temporären Auswahlen verwenden.

Nachfolgende Tabelle zeigt, wie temporäre Auswahlen sichtbar sind, je nachdem, wo sie erstellt wurden:

Es gibt folgende Unterschiede:

  • Eine temporäre Auswahl enthält die Sortierung, eine Menge nicht.
  • Eine Menge lässt sich auf der Festplatte speichern, eine temporäre Auswahl nicht.
  • Mengen können Vereinigungs-, Schnitt- oder Differenzmengen bilden, temporäre Auswahlen nicht.
  • Eine temporäre Auswahl lässt sich nicht mit anderen temporären Auswahlen kombinieren.
  • Mengen benötigen weniger Speicherplatz, da sie nur 1 Bit Speicherplatz pro Datensatz in der Tabelle belegen, temporäre Auswahlen dagegen belegen 4 Bytes pro Datensatz in der Auswahl.

Es gibt folgende Übereinstimmungen:

  • Mengen und temporäre Auswahlen werden im Arbeitsspeicher gehalten.
  • Die Lebensdauer einer Menge und einer temporären Auswahl ist beschränkt. Wird ein Datensatz geändert oder gelöscht, sind sie nicht mehr aktuell.
  • Der aktuelle Datensatz des laufenden Prozesses bleibt erhalten.



Siehe auch 

Namenskonventionen
SET QUERY DESTINATION

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Temporäre Auswahl

 
GESCHICHTE 

 
ARTIKELVERWENDUNG

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