Suchform

11. Mai 2011 08:37

Gegeben sei eine Tabelle mit einem Primärindex und einem Text (Code)Feld als Sekundärindex. Soll eine Liste mit Texbausteinen simulieren. Dazu gibt es eine passende nichteditierbare Form. Darauf ein Textcontrol, das den Suchbegriff aufnimmt. In dessen OnInputChange soll die Tabelle gefiltert werden und dann das Ergebnis in der Tabellenform dargestellt werden. Alleine das funktioniert so nicht. Erst wenn man mit BildAuf/Ab den Datensatz wechselt.

Irgendwelche Hinweise, wie man das System dazu überredet, das Ergebnis gleich anzuzeigen? (LiveSuche haben wir bei unserem SQL-Server abgeschaltet)

Re: Suchform

11. Mai 2011 11:11

Hallo Markus,

hast Du es schon mit CurrForm.Update(false) versucht? Aber Vorsicht: kann man nicht aus jedem Trigger im Form aufrufen (zumindestens erinner ich mich dunkel daran). Ich habe gerade nochmal nachgeschaut: auf OnInputChange() kann man nicht in die Datenbank schreiben. update(false) aktualisiert nur den Fensterinhalt mit dem was in Rec steht... sollte also gehen.

LG Jens

Re: Suchform

11. Mai 2011 12:29

jglathe hat geschrieben:Hallo Markus,

hast Du es schon mit CurrForm.Update(false) versucht? Aber Vorsicht: kann man nicht aus jedem Trigger im Form aufrufen (zumindestens erinner ich mich dunkel daran). Ich habe gerade nochmal nachgeschaut: auf OnInputChange() kann man nicht in die Datenbank schreiben. update(false) aktualisiert nur den Fensterinhalt mit dem was in Rec steht... sollte also gehen.

LG Jens


Ja, currform.update mach ich nach dem Filtern. Hilft leider nix. :-(

Re: Suchform

27. Juni 2011 20:59

Hast du schon einmal versucht den Filter für den Suchbegriff im OnValidate (CurrForm.UPDATE dann im OnAfterValidate) des "Suchtext"-Controls zu setzen?

Re: Suchform

4. Juli 2011 15:44

Enulien hat geschrieben:Hast du schon einmal versucht den Filter für den Suchbegriff im OnValidate (CurrForm.UPDATE dann im OnAfterValidate) des "Suchtext"-Controls zu setzen?


Ja, da klappt's prima. Der Zeitpunkt ist aber leider zu spät. Es sollte nach jedem Zeichen die Form aktualisiert werden. Also praktisch das, was im Std. (performance-killend) klappt: die live-Suche.

Und der 'oninputChange'-trigger ist auch recht merkwürdig.