Zum Hauptinhalt springen

SQL TextBox

"Toolbox button (SQL TextBox)"

Verwenden Sie das Steuerelement SQL TextBox um den Wert eine Spalte aus einer anderen Tabelle anzeigen. Das Steuerelement kann auch bei der Suche verwendet werden.

Der Wert der Spalte kann mit diesem Steuerelement im Gegensatz zum SQL Label vom Anwender auch geändert werden. Der Wert wird dann im zugehörigen Datensatz der Detailtabelle upgedated. Die ist nur verfügbar wenn die Detailtabelle in den Rechte einstellungen auch update Rechte hat. Das Updaten steht erst ab Version 25.1.41 zur Verfügung.

Beispiel:
Man hat ein Formular auf die Tabelle Haltung.
Die Haltung hat einen Anfangs und End Schacht (Tabelle hat ein Feld FID_SCHACHT_ANFANG und FID_SCHACHT_ENDE)
Die Schachte haben ein Feld Schacht Höhe.
Mit einer SQL Textbox kann man nun die Höhe des Anfangs und Endschachtes mit je einem SQLTextBox Feld im Haltungsformular anzeigen und ändern.

Steuerelement spezifische Eigenschaften

DetailTable

Die Tabelle von der die Daten geholt werden

DetailFieldName

Das Attribute das angezeigt und bearbeitet werden soll.

DetailFilter

Der SQL Filter der den Wert zurück liefert.

AllowMultiRowUpdate

Wenn Falsch, dann wird ein Update auf mehr als eine Zeile ignoriert und der Benutzer wird benachrichtigt

Tip: SQLLabel vs SQLTextBox

  • Beiden können zum Filtern verwendet werden
  • SQL Label kann einen beliebigen SQL Ausdruck zurück liefern, kann aber KEINE Daten ändern.
  • SQL TextBox geht fix auf eine Tabelle und genau ein Feld, kann aber Daten ändern.

Geschwindigkeits-Tip

  • Bevorzugen Sie wenn möglich die SQLTextBox vor dem SQLLabel.
  • MapEdit fast im Hintergrund SQL Abfragen von SQL TextBoxen welche auf die gleiche Tabelle und den gleichen Filter gehen zusammen.
  • Damit werden weniger SQLs ausgeführt und das Formular ist schneller und das System wird weniger belastet.
  • Bei SQL Label gibt es keine solche Optimierung/Zusammenfassung.
  • SQLLabels sind immer dann gut wenn man Summen bilden will, Werte zusammen setzen will oder Werte aus mehreren Tabellen anzeigen will, ansonsten ist SQLTextbox die besser Wahl.