Programmierung

Eingabeobjekt mit Datenbankfeld verknüpfen

Im Vergleich zur maskenorientierten Benutzersteuerung besteht bei den grafischen Dialogen eine Trennung zwischen Oberfläche und Datenstruktur. Da der Inhalt eines Eingabeobjekts über die entsprechende Caption-Eigenschaft gesetzt und ausgelesen werden kann, besteht keine Notwendigkeit Objekte mit der Datenstruktur zu verbinden.


CONZEPT 16 bietet dennoch die Möglichkeit, ein Eingabeobjekt mit einem Feld aus der Datenstruktur zu verknüpfen. Über die Eigenschaft wpDbFieldName kann eine Zuordnung zu einem Feld aus der Datenbank vorgenommen werden. Da dieses Verfahren sehr komfortabel ist, der Entwickler muss sich nicht um das Übertragen der Werte zwischen Feldpuffer und Objekt kümmern, wird es in der Praxis häufig eingesetzt. Um so wichtiger ist die Kenntnis darüber, zu welchem Zeitpunkt bzw. bei welcher Aktion die Werte übertragen werden.

Übertragen Inhalt des Feldpuffers in das Eingabeobjekt
  • Das Eingabeobjekt erhält den Fokus
  • Aktualisieren des Objekts oder eines übergeordneten Objekts (Frame, GroupBox, Notebook …) mit der Funktion WinUpdate(). Optional kann auch der Parameter _WinUpdFld2Obj angegeben werden.
Übertragen Inhalt des Eingabeobjekts in den Feldpuffer
  • Das Eingabeobjekt verliert den Fokus
  • Das Eingabeobjekt besitzt den Eingabefokus und eine Menüoption wurde angewählt bzw. über die bei der Eigenschaft wpMenuKey definierten Funktionstaste ausgelöst.
  • Das Eingabeobjekt besitzt den Eingabefokus und ein Button der Toolbar wurde angewählt bzw. über die bei der Eigenschaft wpMenuKey definierten Funktionstaste ausgelöst.
  • Das Eingabeobjekt besitzt den Eingabefokus und ein Button wurde angewählt
  • Prozedurales Übertragen mit der Funktion WinUpdate() und der Update-Option _WinUpdObj2Fld

Ist dieser Automatismus in einer bestimmten Konstellation nicht erwünscht, kann der Update vom Feldpuffer zum Eingabeobjekt und umgekehrt, über die Optionen _WinAppFld2ObjOff und _WinAppObj2FldOff bei der Eigenschaft wpFlags des _App-Objektes verhindert werden. Ein Übertragen der Werte über die Funktion WinUpdate() wird dann ebenfalls verhindert.

Beispiel:

_App->wpFlags # _App->wpFlags | _WinAppObj2FldOff | _WinAppFld2ObjOff
1 Kommentar

1 Kommentar zu “Eingabeobjekt mit Datenbankfeld verknüpfen”

Kommentar abgeben