Datensätze in Formular anzeigen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Datensätze in Formular anzeigen

Beitrag 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 !
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Datensätze in Formular anzeigen

Beitrag von turtle47 »

Hallo,

wer suchet der findet. :wink:

Viel Erfolg.

Jürgen
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Re: Datensätze in Formular anzeigen

Beitrag 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!
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Datensätze in Formular anzeigen

Beitrag 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
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Re: Datensätze in Formular anzeigen

Beitrag 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 ?
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Datensätze in Formular anzeigen

Beitrag 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
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Re: Datensätze in Formular anzeigen

Beitrag 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
turtle47
*******
Beiträge: 1849
Registriert: Mi, 04.01.2006 20:10
Wohnort: Rheinbach

Re: Datensätze in Formular anzeigen

Beitrag 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
Software hat keinen Verstand - benutze deinen eigenen...!

Win 7 SP1/ LibreOffice 3.4.2 OOO340m1 (Build:203) / Firefox 15.0.1 / Notebook ASUS K70IO 64 Bit-Betriebssytem
nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Re: Datensätze in Formular anzeigen

Beitrag 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.
nahemoth
**
Beiträge: 29
Registriert: Do, 20.08.2009 08:27

Re: Datensätze in Formular anzeigen

Beitrag 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 ?
Antworten