4D v16.3

DISPLAY SELECTION

Home

 
4D v16.3
DISPLAY SELECTION

DISPLAY SELECTION 


 

DISPLAY SELECTION ( {Tabellenname}{; AuswModus}{; EingListe}{; *}{; *} ) 
Parameter Typ   Beschreibung
Tabellenname  Tabelle in Tabelle zum Bearbeiten oder Haupttabelle ohne Angabe
AuswModus  Lange Ganzzahl in Auswahlmodus
EingListe  Boolean in Option Eingabe in Liste erlauben
in Ausgabeformular für einzelnen Datensatz verwenden und Rollbalken im Eingabeformular ausblenden
in Rollbalken im Eingabeformular anzeigen (überschreibt die 2. Option des 1. Parameters *)

Der Befehl DISPLAY SELECTION zeigt die Auswahl der Tabelle Tabellenname im aktuellen Ausgabeformular an. Die Datensätze erscheinen in einer scrollbaren Liste ähnlich wie die Liste in der Benutzerumgebung. Klickt der Anwender einen Datensatz zweimal an, wird dieser standardmäßig im aktuellen Eingabeformular dargestellt. Die Liste erscheint im vordersten Fenster.
Wollen Sie eine Auswahl anzeigen und auch einen Datensatz im aktuellen Eingabeformular nach Doppelklicken ändern (wie im Fenster der Designumgebung), verwenden Sie den Befehl MODIFY SELECTION anstatt DISPLAY SELECTION.
Alle nachfolgenden Informationen gelten für beide Befehle. Nur für Ändern von Datensätzen gibt es Unterschiede.

Nach Ausführen von DISPLAY SELECTION gibt es u.U. keinen aktuellen Datensatz mehr. Verwenden Sie einen Befehl wie FIRST RECORD oder LAST RECORD, um wieder einen aktuellen Datensatz auszuwählen.

In AuswModus setzen Sie den Auswahlmodus für die Datensätze. Hier können Sie eine der Konstanten unter dem Thema Formularoptionen übergeben:

Konstante Typ Wert Kommentar
Multiple selection Lange Ganzzahl 2 Der Benutzer kann mehrere Datensätze auf einmal auswählen. Für zusammenhängende Datensätze den ersten Datensatz anklicken und mit gedrückter Umschalttaste den letzten Datensatz für die Auswahl anklicken. Für nicht zusammenhängende Datensätze jeden Datensatz einzeln anklicken, unter Windows mit gedrückter Strg-Taste, auf Mac OS mit gedrückter Befehlstaste.
No selection Lange Ganzzahl 0 In der Liste lässt sich kein Datensatz auswählen.
Single selection Lange Ganzzahl 1 Nur ein Datensatz ist auf einmal auswählbar.

Standardmäßig, d.h. ohne den Parameter AuswModus, wird die Option multiple Auswahl verwendet.

In EingListe ermöglichen Sie in der angezeigten Liste die Option “Eingabe in Liste”. Der Benutzer kann dann die Werte des Datensatzes direkt im Ausgabeformular auswählen und ändern. Mit Wahr ist die Eingabe zugelassen, mit Falsch ist sie nicht zugelassen. Standardmäßig, d.h. ohne den Parameter EingListe ist diese Option nicht zugelassen.
Beachten Sie, dass mit diesem Parameter nur möglich ist, die Werte in der Liste auszuwählen und nicht, sie zu ändern. DISPLAY SELECTION lädt nämlich die Datensätze der aktuellen Auswahl im aktuellen Prozess im Nur-Lesen Modus. Die Eingabe von Werten ist nur mit dem Befehl MODIFY SELECTION möglich.

Hinweis: Mit dem Befehl OBJECT SET ENTERABLE können Sie die Option “Eingabe in Liste” sofort aktivieren oder deaktivieren.

Für die optionalen Parameter * gelten folgende Regeln:

  • Enthält die Auswahl nur einen Datensatz und wird der optionale Parameter * nicht angegeben, erscheint der Datensatz im Eingabeformular anstatt im Ausgabeformular.
  • Wird der optionale Parameter * angegeben und zeigt der Benutzer den Datensatz im Eingabeformular durch Doppelklick an, werden die Rollbalken im Eingabeformular ausgeblendet. Um diesen Effekt wieder umzukehren, übergeben Sie einen zweiten optionalen*.

Die selbsterstellten Schaltflächen können im Fuß- oder Kopfteil des Ausgabeformulars liegen, um die Ausführung von DISPLAY SELECTION zu bestimmen. Sie können zum Verlassen die automatischen Schaltflächen Bestätigen oder Abbrechen verwenden bzw. eine Objektmethode, die die Befehle ACCEPT oder CANCEL aufruft. Ein über DISPLAY SELECTION aufgerufenes Ausgabeformular hat keine Schaltflächen. Sie können es nur über die Escape-Taste unter Windows, Esc auf Mac OS verlassen.

Während und nach dem Ausführen von DISPLAY SELECTION werden die vom Benutzer ausgewählten Datensätze in der Menge “UserSet” abgelegt. “UserSet” ist in der Auswahlanzeige für Objektmethoden verfügbar, wenn auf eine Schaltfläche geklickt oder ein Menüeintrag gewählt wird. Diese Menge ist auch in der Projektmethode verfügbar, die DISPLAY SELECTION nach Ausführen des Befehls aufgerufen hat.

Folgendes Beispiel wählt alle Datensätze der Tabelle [People]. Sie werden mit DISPLAY SELECTION angezeigt. Der Benutzer kann nun die Datensätze auswählen, die er drucken möchte. Die Datensätze werden mit USE SET ausgewählt und dann mit PRINT SELECTION gedruckt:

 ALL RECORDS([People]` Wähle alle Datensätze
 DISPLAY SELECTION([People];*) ` Zeige die Datensätze an
 USE SET("UserSet") ` Verwende nur die vom Benutzer markierten Datensätze
 PRINT SELECTION([People]` Drucke die markierten Datensätze

Siehe Beispiel 6 unter der Funktion Form event. Es zeigt alle Tests, die während dem Ablaufen von DISPLAY SELECTION zur kompletten Steuerung der Ereignisse notwendig sind.

Wollen Sie zum Beispiel die Funktionsweise des Menüs Suchen der Benutzerumgebung mit DISPLAY SELECTION oder MODIFY SELECTION in der Runtime-Umgebung reproduzieren, gehen Sie folgendermaßen vor:

  1. Erstellen Sie in der Designumgebung eine Menüleiste mit den gewünschten Befehlen, z.B. Alle zeigen, Suchen und Sortieren
  2. Weisen Sie diese Menüleiste mit einer negativen Menüleistennummer dem Ausgabeformular zu, das Sie mit DISPLAY SELECTION oder MODIFY SELECTION verwenden.
  3. Den Menübefehlen weisen Sie folgende Projektmethoden zu:

  ` M_Alle zeigen (dem Menübefehl Alle zeigen zugeordnet)
 $vpCurTable:=Current form table
 ALL RECORDS($vpCurTable->)
 
  ` M_Suchen (Dem Menübefehl Suchen zugeordnet)
 $vpCurTable:=Current form table
 QUERY($vpCurTable->)
 
  ` M_Sortieren (dem Menübefehl Sortieren zugeordnet)
 $vpCurTable:=Current form table
 ORDER BY($vpCurTable->)

Sie können natürlich auch andere Befehle verwenden, wie PRINT SELECTION, QR REPORT, um andere “Standard” Optionen im Menü der Runtime-Umgebung nachzubauen, die Sie beim Anzeigen oder Ändern einer Auswahl benötigen. Durch die Funktion Current form table sind diese Methoden generisch, d.h. die entsprechende Menüleiste kann jedem Ausgabeformular einer beliebigen Tabelle zugewiesen werden.



Siehe auch 

Einführung in Mengen
Form event
MODIFY SELECTION

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Auswahl
Nummer: 59

Nicht für Server verwendbar

 
GESCHICHTE 

Geändert: 4D 2004

 
ARTIKELVERWENDUNG

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