Erzeugen eines Suchdialogs durch Property-Funktionalität
Wenn Sie sich die Properties der Controls aufmerksam angesehen haben, ist Ihnen sicher aufgefallen, dass Sie z.B. Buttons als IsSearchButton und Edit-Felder als IsSearchField deklarieren können.
Framework Studio bietet die Möglichkeit, relativ einfach Suchbedingungen anhand der vorhandenen Controls zu erzeugen und auch automatisch einen Load an einer Component oder Collection mit dieser Suchbedingung auszuführen. Die Felder, die sich an der Suchbedingung beteiligen sollen, werden entsprechend mit dem Property IsSearchField gekennzeichnet. Damit das funktioniert, muss den Controls als Datasource ein Property der Component zugeordnet sein, aus der die Suchbedingung erstellt werden soll.
Wollen Sie z.B. einen Kundensuchdialog erstellen, werden Suchfelder als DataSource Properties der Komponente Kunden haben. Definieren Sie die Felder entsprechend als IsSearchField und stellen unter SearchOperator den Suchoperator ein.
Ein weiteres Element der Suche mit Property-Funktionalität sind Buttons. Buttons können als IsSearchButton deklariert werden. In unserem Beispiel würden Sie einen Button oder ImageButton als solchen kennzeichnen. Jetzt müssen Sie dem Button noch sagen, an welcher Collection der Load ausgeführt werden soll. Dies tun Sie mit der Eigenschaft LoadAtComponent.
In unserem Beispiel könnte das die KundenCollection sein. Als letztes müssen Sie noch bestimmen, aus welcher Component die Suchbedingung stammt. Das ist immer die Component, aus der die Properties der Suchfelder stammen, also in dem Beispiel Kunden. Tragen Sie die Component entsprechend unter SearchValuesComponent ein.
Ihr Suchdialog ist fertig. Bei einem Klick auf den Such-Button wird geprüft, ob in einem als Suchfeld definierten Control ein Wert hinterlegt worden ist. Ist dies der Fall, wird das Feld entsprechend dem Operator in Ihre Suchbedingung aufgenommen. Ist ein Property einer Komponente als SearchField deklariert, steht Ihrem Form eine Methode mit dem Namen GenerateLoadConditionOnXxxXxx zur Verfügung. Diese Methode baut Ihren Select-String zusammen. Die Einstellungen an dem Such-Button bewirken, dass dieser automatisch einen Load in der Form LoadAtComponent.Load( GenerateLoadConditionOnXxxXxx)
erzeugt.
Wenn Sie die Suche lieber selber ausprogrammieren, können Sie die Suchbedingung auch modifizieren.