Seite 1 von 1

Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 16:14
von nahemoth
Hi,

ich habe hier eine Datenbank die Benutzernamen und -daten enthält. Nun würde ich gerne ein Formular erstellen, in dem ich in einem Dropdown-Feld einen Benutzernamen auswählen kann, und dann werden darunter die Datensätze die es zu deisem Benutzer gibt angezeigt.

Aber ich krieg das nicht hin. Das Dropdown-Feld füllen ist nicht schwehr, aber wie mache ich es, dass bei einer Auswahl, dann die Datensätze in dem Formular angezeigt werden ?

danke !

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 16:19
von turtle47
Hallo,

wer suchet der findet. :wink:

Viel Erfolg.

Jürgen

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 17:12
von nahemoth
hm, ok, danke !

ich hab mir mal das beispiel-file geholt und angeschaut, aber er bringt mir den folgenden fehler:
Eigenschaft oder Methode nicht gefunden: SelectedItems
das ist der code

Code: Alles auswählen

Sub SelectListbox
Dim oForm, oListbox As Object
Dim LB_Item as integer
   oForm = ThisComponent.drawpage.forms.getbyindex(0)   
   oListbox = oForm.getByName("ListBox1")
   LB_Item = oListbox.SelectedItems(0)   
   oform.absolute (LB_Item)
End Sub
und ich frage mich noch, wie ich das ergebnis so in das Tabellenkontrollfeld bekomme.

thx!

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 17:27
von turtle47
Hi,
nahemoth hat geschrieben:ich hab mir mal das beispiel-file geholt und angeschaut, aber er bringt mir den folgenden fehler:

Eigenschaft oder Methode nicht gefunden: SelectedItems
Tja, was soll ich dazu sagen?

Da tun sich folgende Fragen auf:

Unter welchem BS arbeitest Du?
Welche OO.o-Version ist im Einsatz?
Sind alle Komponenten wie Calc, Writer etc. installiert?
Ist OO.o mit oder ohne JRE installiert worden?
nahemoth hat geschrieben:und ich frage mich noch, wie ich das ergebnis so in das Tabellenkontrollfeld bekomme.
???

Jürgen

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 17:48
von nahemoth
naja, ich wage zu bezweifeln, dass das an meinem OS liegt, welches übrigens Debian GNU/Linux ist, 'testing' um genau zu sein.
OO ist 3.2.1.3 und es sind alles komponenten installiert, so wie auch java-unterstützung.

was ich nicht kapiere ... wie definiere ich, was in dem Tabellenkontrollfeld ausgegeben wird.

edit:

ok, ich hab das mit dem listenfeld jetzt, nur, wie muss ich nun das tabellenkontrollfeld anlegen, damit dort dann nur die datensätze gezeigt werden, deren benutzer ausgewählt ist ?

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 19:25
von turtle47
Hallo nahemoth,
nahemoth hat geschrieben:ok, ich hab das mit dem listenfeld jetzt,
Hat sich das Problem mit der Fehlermeldung jetzt erledig?

Wenn nicht dann:
nahemoth hat geschrieben:naja, ich wage zu bezweifeln, dass das an meinem OS liegt, welches übrigens Debian GNU/Linux ist, 'testing' um genau zu sein.
OO ist 3.2.1.3 und es sind alles komponenten installiert, so wie auch java-unterstützung.
Ich habe die Datenbank mal mit der Knopix-LiveCD getestet und keine Probleme mit dem Makro gehabt.

Verwendest Du die in der Distri mitgelieferte OOo Installation oder hast Du OOo separat installiert?
In der Vergangenheit hat sich nämlich gezeigt, dass in der Distri enthaltene OOo-Installationen in
manchen Bereichen leider nicht ganz sauber arbeiten.
nahemoth hat geschrieben:nur, wie muss ich nun das tabellenkontrollfeld anlegen, damit dort dann nur die datensätze gezeigt werden, deren benutzer ausgewählt ist ?
Na, dann musst Du einen Filter setzen.


Das muss natürlich so umgebaut und modifizert werden, dass der gewählte Eintrag aus der Listbox gelesen wird und als Filterkriterum verwendet wird.

Es wartet also noch eine Menge Arbeit auf Dich.

Schöne Grüsse.

Jürgen

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 20:42
von nahemoth
Hey Jüren,

also die DB die in dem Thread mitgeliefert wird, die funktioniert schon, nur meine eigene net ;)
da sagt er mir, dass in der Zeile LB_Item = oListbox.SelectedItems die Objektvariable nicht belegt sei.

Code: Alles auswählen

Sub SelectListbox
	Dim oForm, oListbox As Object
	Dim LB_Item as integer
		oForm = ThisComponent.drawpage.forms.getbyindex(0)   
   		oListbox = oForm.getByName("ListBox1")
   		LB_Item = oListbox.SelectedItems
   		oform.absolute (LB_Item)
End Sub

Re: Datensätze in Formular anzeigen

Verfasst: So, 13.06.2010 21:29
von turtle47
Hi,
nahemoth hat geschrieben:da sagt er mir, dass in der Zeile LB_Item = oListbox.SelectedItems die Objektvariable nicht belegt sei.
Entweder hast Du den Code nicht richtig übernommen oder hier nicht richtig reingeschrieben.

Die Zeile heisst richtig:

Code: Alles auswählen

LB_Item = oListbox.SelectedItems(0)	
Man beachte das (0) am Ende, wobei die Null die Stelle in dem SelectedItems-Array bezeichnet.
Da Du sicherlich keine Mehrfachauswahl zugelassen hast, ist der Wert (Stelle) bei einem gewählten Eintrag immer (0).

Ich hoffe das hilft.

Jürgen

Re: Datensätze in Formular anzeigen

Verfasst: Mo, 14.06.2010 14:20
von nahemoth
hm, ich habs jetzt ma abgeändert, auf ne combobox

Code: Alles auswählen

Sub SelectCombobox
Dim oForm, oCombobox As Object
Dim LB_Item as integer
   oForm = ThisComponent.drawpage.forms.getbyindex(0)   
   oCombobox = oForm.getByName("Combobox1")
   LB_Item = oCombobox.Text
   msgbox(LB_Item)
   oform.absolute (LB_Item)
End Sub
die msgbox ist nur da im das ergebnis prüfen zu können, aber er gibt mir da generell 0 aus.
auch weiss ich noch nicht, wie ich das dann verwenden kann, um den inhalt des tabellenkontrollfelds zu bestimmen.

Re: Datensätze in Formular anzeigen

Verfasst: Mo, 14.06.2010 16:38
von nahemoth
hm, eigentlich müsste es doch auch gehen, wenn ich eine abfrage erstelle, die alle datensätze ausgibt, die den wert in der combobox enthalten. nur wie kann man in einer abfrage auf die combobox zugreifen ? wie gebe ich dort an, dass als kriterium das cobobox-feld gewählt wird ?
und in dem Tabellenkontrollfeld muss ich ja dann nur als Quelle die Abfrage angeben, oder ?