Ich habe eine Liste von Datensätzen, in einer Combobox soll man alle in dem Attribut
Name vorkommenden Namen zur Auswahl haben.
Wird dann einer Ausgewählt, so sollen nur die entsprechenden Datensätze ausgegeben werden.
Was verstehst du daran nicht ?
Hier mal noch, wie ich das ganze aufgebaut habe:
Tabellen:
- t_Users -> enthält Benutzer
- t_Logins -> enthält Login-Daten
Formular:
Art des Inhalts: Tabelle
Inhalt: t_Logins
Combobox:
Datenfeld: Name
Listeninhalt: SELECT DISTINCT `Name` FROM `weblogin`.`t_users`
Tabellenkontrollfeld
Makro:
Code: Alles auswählen
Sub SelectCombobox
Dim oForm As Object
Dim oCtrlModel As Object
Dim oTabellenKontrollfeld as Object
oForm = ThisComponent.drawpage.forms.getbyindex(0)
oCtrlModel = oForm.getByName("Combobox")
value = oCtrlModel.Text
msgbox(value)
oTabellenKontrollfeld = oForm.getByName("Tkf")
oTabellenKontrollfeld.Filter = value
oTabellenKontrollfeld.ApplyFilter = True
oForm.Reload
End Sub
Wenn ich nun in der Combobox einen Eintrag auswähle, dann gibt er diesen auch korrekt in der Msgbox aus, aber an dem tabellenkontrollfeld ändert sich nichts. Er sollte aber nun lediglich die Datensätze Anzeigen, die den Namen matchen.
Das ist das ganze Problem.
Ich hoffe mich versteht man jetzt etwas besser.
Edit:
jetzt hats geklappt:
Code: Alles auswählen
Sub SelectCombobox
Dim oForm As Object
Dim oCtrlModel As Object
Dim oTabellenKontrollfeld As Object
oForm = ThisComponent.drawpage.forms.getbyindex(0)
oCtrlModel = oForm.getByName("Combobox")
value = oCtrlModel.Text
oTabellenKontrollfeld = oForm.getByName("Tkf")
oForm.Filter = "(`weblogin`.`t_logins`.`Name` = "& "'"& value & "')"
oForm.applyFilter = True
oForm.Reload
End Sub
Ich habe eine Liste von Datensätzen, in einer Combobox soll man alle in dem Attribut [i]Name[/i] vorkommenden Namen zur Auswahl haben.
Wird dann einer Ausgewählt, so sollen nur die entsprechenden Datensätze ausgegeben werden.
Was verstehst du daran nicht ?
Hier mal noch, wie ich das ganze aufgebaut habe:
Tabellen:
- t_Users -> enthält Benutzer
- t_Logins -> enthält Login-Daten
Formular:
Art des Inhalts: Tabelle
Inhalt: t_Logins
Combobox:
Datenfeld: Name
Listeninhalt: SELECT DISTINCT `Name` FROM `weblogin`.`t_users`
Tabellenkontrollfeld
Makro:
[code]Sub SelectCombobox
Dim oForm As Object
Dim oCtrlModel As Object
Dim oTabellenKontrollfeld as Object
oForm = ThisComponent.drawpage.forms.getbyindex(0)
oCtrlModel = oForm.getByName("Combobox")
value = oCtrlModel.Text
msgbox(value)
oTabellenKontrollfeld = oForm.getByName("Tkf")
oTabellenKontrollfeld.Filter = value
oTabellenKontrollfeld.ApplyFilter = True
oForm.Reload
End Sub[/code]
Wenn ich nun in der Combobox einen Eintrag auswähle, dann gibt er diesen auch korrekt in der Msgbox aus, aber an dem tabellenkontrollfeld ändert sich nichts. Er sollte aber nun lediglich die Datensätze Anzeigen, die den Namen matchen.
Das ist das ganze Problem.
Ich hoffe mich versteht man jetzt etwas besser.
Edit:
jetzt hats geklappt:
[code]Sub SelectCombobox
Dim oForm As Object
Dim oCtrlModel As Object
Dim oTabellenKontrollfeld As Object
oForm = ThisComponent.drawpage.forms.getbyindex(0)
oCtrlModel = oForm.getByName("Combobox")
value = oCtrlModel.Text
oTabellenKontrollfeld = oForm.getByName("Tkf")
oForm.Filter = "(`weblogin`.`t_logins`.`Name` = "& "'"& value & "')"
oForm.applyFilter = True
oForm.Reload
End Sub[/code]