von egerlach » Do, 03.05.2007 01:32
sarotti hat geschrieben:Hallo Eckard,
wenn der Filter funktioniert, dann kann es sein, dass Du die Aktualisierung des Formulars (hier: "oFormSuche") nach dem Setzen des Filters vergessen hast?
?? Hä? Ich habe noch gar kein Modul programmiert! Ich bemerke aber gerade meinen Fehler: mein Kombinationsfeld schreibt seinen ausgewählten Wert einfach in einen anfangs zufällig gewählten Datensatz der Tabelle auf der das Formular beruht, in dem das Kombinationsfeld zu liegen kommt! Das ist völlig Unsinn! Es sollte der Wert an das Subformular weitergegeben werden als Filter! Meine Konstruktion ist Quatsch! Ich brauche kein Formular und Subformular, sonder einfach ein Kombinationsfeld, das - vermutlich nur über BASIC programmierbar - nach Aktualisierung dem Tabellenkontrollfeld mitteilt, das es ein "reload" machen soll mit dem im Kombinationsfeld gesetzten Wert!
sarotti hat geschrieben:
Wenn bei einem neuen Aufruf des Formulars der Filter noch aktiv ist, dann hast Du ihn vermutlich mit dem Formular gespeichert. Den Filter kannst Du wie folgt ausschalten:
Code: Alles auswählen
....
oFormSuche.ApplyFilter=false
oFormSuche.Filter=""
oFormSuche.reload()
...
Den Code oben verstehe ich ... hmmm ... wie aber setze ich einen Filter? Mit MainForm_Grid.regio.Filter=ComboBox.value ????
Also die Syntax ist jetzt frei erfunden: MainForm_Grid heißt mein Tabellen-Kontrollfeld, regio ist der FEldname, auf den der Filter angewendet werden soll, ComboBox ist der Name des Kombinationsfeldes. Wie setze ich den Filter? Wie lese ich das Kombinationsfeld aus? - Also jetzt alles in einem Fomular, nix Subformular mehr.
Mein Vorschlag:
Code: Alles auswählen
Sub Main
MainForm_Grid.ApplyFilter=false
MainForm_Grid.Filter=""
MainForm_Grid.regio.Filter=ComboBox.value
MainForm_Grid.reload()
msgbox "Filter versucht zu setzen"
End Sub
Wo trage ich denn eigentlich dann das Makro ein? Unter "Beim Auslösen"? Unter "Bei Taste gedrückt?" Unter "Nach dem Aktualisieren?" - Alles völlig mißverständliche Ereignisse bei einem Kombinationsfeld, um nicht zu sagen echter Schrott ... :0
Habe das Basic-Modul überall mal reingehängt, es wird aber NIRGENDWANN ausgeführt! Habe eine msgbox eingefügt, die wird nämlich nie angezeigt! Was ist denn das?? Kann mir hier jmd sagen, was für ein Ereignis es sich schimpft, wenn in dem Kombinationsfeld irgendetwas ausgewählt wurde???
Gruss
Eckard[/quote]
[quote="sarotti"]Hallo Eckard,
wenn der Filter funktioniert, dann kann es sein, dass Du die Aktualisierung des Formulars (hier: "oFormSuche") nach dem Setzen des Filters vergessen hast?
[code]
...
oFormSuche.reload()
....
[/code]
[/quote]
?? Hä? Ich habe noch gar kein Modul programmiert! Ich bemerke aber gerade meinen Fehler: mein Kombinationsfeld schreibt seinen ausgewählten Wert einfach in einen anfangs zufällig gewählten Datensatz der Tabelle auf der das Formular beruht, in dem das Kombinationsfeld zu liegen kommt! Das ist völlig Unsinn! Es sollte der Wert an das Subformular weitergegeben werden als Filter! Meine Konstruktion ist Quatsch! Ich brauche kein Formular und Subformular, sonder einfach ein Kombinationsfeld, das - vermutlich nur über BASIC programmierbar - nach Aktualisierung dem Tabellenkontrollfeld mitteilt, das es ein "reload" machen soll mit dem im Kombinationsfeld gesetzten Wert!
[quote="sarotti"]
Wenn bei einem neuen Aufruf des Formulars der Filter noch aktiv ist, dann hast Du ihn vermutlich mit dem Formular gespeichert. Den Filter kannst Du wie folgt ausschalten:
[code]
....
oFormSuche.ApplyFilter=false
oFormSuche.Filter=""
oFormSuche.reload()
...
[/code]
[/quote]
Den Code oben verstehe ich ... hmmm ... wie aber setze ich einen Filter? Mit MainForm_Grid.regio.Filter=ComboBox.value ????
Also die Syntax ist jetzt frei erfunden: MainForm_Grid heißt mein Tabellen-Kontrollfeld, regio ist der FEldname, auf den der Filter angewendet werden soll, ComboBox ist der Name des Kombinationsfeldes. Wie setze ich den Filter? Wie lese ich das Kombinationsfeld aus? - Also jetzt alles in einem Fomular, nix Subformular mehr.
Mein Vorschlag:
[code]
Sub Main
MainForm_Grid.ApplyFilter=false
MainForm_Grid.Filter=""
MainForm_Grid.regio.Filter=ComboBox.value
MainForm_Grid.reload()
msgbox "Filter versucht zu setzen"
End Sub
[/code]
Wo trage ich denn eigentlich dann das Makro ein? Unter "Beim Auslösen"? Unter "Bei Taste gedrückt?" Unter "Nach dem Aktualisieren?" - Alles völlig mißverständliche Ereignisse bei einem Kombinationsfeld, um nicht zu sagen echter Schrott ... :0
Habe das Basic-Modul überall mal reingehängt, es wird aber NIRGENDWANN ausgeführt! Habe eine msgbox eingefügt, die wird nämlich nie angezeigt! Was ist denn das?? Kann mir hier jmd sagen, was für ein Ereignis es sich schimpft, wenn in dem Kombinationsfeld irgendetwas ausgewählt wurde???
Gruss
Eckard[/quote]