4D v16.3

DIALOG

Home

 
4D v16.3
DIALOG

DIALOG 


 

DIALOG ( {Tabellenname ;} Formularname {; *} ) 
Parameter Typ   Beschreibung
Tabellenname  Tabelle in Tabelle, zu der das Formular gehört,
ohne Angabe: Standardtabelle oder Verwenden von Projektformular
Formularname  String in Name der Tabelle oder des Projektformulars zur Anzeige als Dialog
Operator in Verwende gleichen Prozess

Der Befehl DIALOG zeigt am Bildschirm das Formular Formularname der Tabelle Tabellenname an. Es handelt sich nicht um die Eingabe eines Datensatzes, sondern um einen Dialog, d. h. eine Benutzerschnittstelle ohne Rollbalken, die aus mehreren Seiten bestehen kann.

Oft wird das Formular in einem modalen Fenster angezeigt, das mit dem Befehl Open window erstellt wurde.

Hier ein typisches Beispiel für einen Dialog:

Verwenden Sie DIALOG anstatt ALERT, CONFIRM oder Request, wenn die anzuzeigende Information für diese Befehle zu umfangreich ist

Hinweis: In konvertierten Datenbanken lässt sich die Dateneingabe in Felder von Dialogboxen unterbinden, d.h. die Dateneingabe ist auf Variablen beschränkt. Diese Option stellen Sie in den Einstellungen der Datenbank auf der Seite Kompatibilität ein. Diese Einschränkung entspricht der Arbeitsweise früherer 4D Versionen.

DIALOG verwendet im Gegensatz zu ADD RECORD oder MODIFY RECORD nicht das aktuelle Eingabeformular. Sie müssen in Formularname festlegen, welches Formular (Projekt- oder Tabellenformular) verwendet werden soll. Gibt es keine Schaltflächen im Formular, setzt 4D keine Standardschaltflächen ein. In diesem Fall können Sie das Formular nur über die Escape-Taste verlassen.
Der Dialog wird bestätigt, wenn der Benutzer auf die Schaltfläche Bestätigen bzw. die Eingabetaste im Zahlenblock klickt oder der Befehl ACCEPT ausgeführt wird. Beachten Sie, dass die Bestätigung keine Sicherung auslöst: Enthält der Dialog Felder, müssen Sie explizit den Befehl SAVE RECORD aufrufen, um alle geänderten Daten zu sichern.
Der Dialog wird abgebrochen, wenn der Benutzer auf die Schaltfläche Abbrechen bzw. auf die Escape-Taste klickt oder der Befehl CANCEL ausgeführt wird.

Übergeben Sie den optionalen Parameter *, wird Formularname geladen und im zuletzt geöffneten Fenster des aktuellen Prozesses angezeigt. Der Befehl beendet seine Ausführung und lässt das aktive Formular auf dem Bildschirm. Dieses Formular reagiert dann normal auf Benutzeraktionen und wird über eine Standardaktion geschlossen oder, wenn der mit dem Formular verbundene 4D Code (Objekt- oder Formularmethode) den Befehl CANCEL oder ACCEPT aufruft. Endet der aktuelle Prozess, werden die auf diese Weise erstellten Formulare automatisch so geschlossen, als ob CANCEL aufgerufen worden wäre. Dieser Öffnen-Modus ist besonders hilfreich zum Anzeigen eines Palettenfensters mit einem Dokument und es ist kein weiterer Prozess erforderlich.

Hinweise:

  • Sie müssen ein Fenster anlegen, bevor Sie die Anweisung DIALOG(Formular;*) aufrufen; Sie können nicht das aktuelle Dialogfenster im Prozess bzw. das standardmäßig für jeden Prozess erstellte Fenster verwenden. In diesem Fall wird der Fehler 9909 erzeugt.
  • Mit dem Parameter * wird das Fenster automatisch über eine Standardaktion oder Aufrufen des Befehls CANCEL oder ACCEPT geschlossen. Sie müssen das Schließen des Fensters selbst nicht verwalten.

Folgendes Beispiel zeigt die Verwendung von DIALOG, um Suchkriterien festzulegen. Auf dem Bildschirm wird ein eigenes Formular mit den Variablen vName und vState angezeigt, in das der Benutzer die Suchkriterien eingeben kann.

 Open window(10;40;370;220) ` Öffne modales Fenster
 DIALOG("Search Dialog") ` Zeige eigenen Dialog für Kundensuche an
 CLOSE WINDOW ` Modales Fenster wird nicht mehr benötigt
 If(OK=1) ` Wird der Dialog bestätigt
    QUERY([Company];[Company]Name=vName;*)
    QUERY([Company];&;[Company]State=vState)
 End if

Dieses Beispiel erstellt eine Werkzeugpalette

  `Zeige Werkzeugpalette
 $palette_window:=Open form window("Werkzeuge";Palette form window)
 DIALOG("Werkzeuge";*) `Die Steuerung sofort zurückgeben
  `Zeige Hauptdokumentfenster
 $document_window:=Open form window("Dok";Plain form window)
 DIALOG("Dok")

Bestätigen des Dialogs nach Aufrufen von DIALOG setzt die Systemvariable OK auf 1, Abbrechen setzt sie auf 0.



Siehe auch 

ACCEPT
ADD RECORD
CANCEL
Open window

 
EIGENSCHAFTEN 

Produkt: 4D
Thema: Eingabe
Nummer: 40

Dieser Befehl ändert die Systemvariable OKDieser Befehl ändert die Systemvariable Error

 
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)