Eingabe aus Listbox eines Formulars auslesen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

johahigo
Beiträge: 3
Registriert: So, 03.01.2010 12:32

Eingabe aus Listbox eines Formulars auslesen

Beitrag von johahigo »

Hallo zusammen!

Ich habe ein kleines Problem mit einer Listbox unter Base.
Ich habe eine Datenbank erstellt, die zur Verwaltung von Musikalben dienen soll. Nun kann ich in einer Listbox beispielsweise die Musikrichtung Pop auswählen. Jetzt möchte ich erreichen, das mir in der nächsten Listbox nur noch die Popalben angezeigt werden. Meine Frage ist jetzt, wie kann ich die Auswahl der Listbox "Musikrichtung" auslesen, und in eine neue "SELECT" Anweisung einbinden?
Hoffe das ich mich einigermaßen verständlich ausgedrückt habe. Bin leider noch ziemlich neu in diesem Bereich.



Mfg Daniel
lugflev
Beiträge: 5
Registriert: So, 23.04.2006 15:03
Kontaktdaten:

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von lugflev »

Moin Daniel!

Habe hier quasi dasselbe Problem wie Du:

Gegeben ist ein Subform "Subform_Ergebnisse" in dem ich ein Feld "gruppe" über eine Werteliste (Zahlen 1-5) auswählen lasse. Auf dieser Basis soll dann im nächsten Feld "disziplin" zur Auswahl des Feldinhalts ein Select auf die Tabelle laufen, in der neben den Zahlen 1-5 dann die zugehörigen Werte hinterlegt sind. Wenn also in "gruppe" "1" ausgewählt wurde, dann sollen nur die Disziplinen mit Gruppenkenner "1" zur Auswahl geboten werden.

"Eigentlich" kann es doch nicht so schwierig sein, einem Select-Statement den Inhalt eines Formulars als Parameter zu übergeben, auch wenn der noch nicht in der Db abgelegt ist, weil die Eingabe dieses Datensatzes ja noch nicht abgeschlossen wurde...

Bin gespannt, ob wir Antworten erhalten. Bis dahin wühl ich mich mal weiter durch die Historie hier im Forum. Das Prob gab es irgendwann bestimmt schon mal ;)

Gruß,

Mike
johahigo
Beiträge: 3
Registriert: So, 03.01.2010 12:32

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von johahigo »

Hey Mike

Ja klingt nach dem gleichen Problem :D
Sag mal bescheid wenn Du was gefunden hast. Ich verzweifel hier nämlich langsam wirklich. Kann doch nicht so schwer sein.



Gruß Daniel
lugflev
Beiträge: 5
Registriert: So, 23.04.2006 15:03
Kontaktdaten:

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von lugflev »

Moin Daniel!

So, einen Schritt weiter bin ich jetzt: Ich bastel mit folgendem Makro rum, dass ich hier im Forum gefunden habe:

Sub Feldinhalt_Gruppe_ermitteln

Dim oDoc as Object,oDocCtl as Object, oForm as Object, oFeld as Object, oFeld2 as Object
Dim oFeldView as Object, oFeld2View as Object
Dim inhalt as String

oDoc = ThisComponent
oDocCtl = oDoc.getCurrentController()
oForm = oDoc.drawpage.forms("Sub_Form_Ergebnisse")


Bis hier läuft es fehlerfrei, aber dann kommt die nächste Zeile:

inhalt= thisComponent.drawpage.forms.getByName("Sub_Form_Ergebnisse").getByName("Gruppe").Value


Das soll den Inhalt des Feldes "Gruppe" im Subform "Sub_Form_Ergebnisse" ermitteln. Das Subform hat er ja offensichtlich erkannt, sonst hätte ich eine Zeile eher ja schon eine Fehlermeldung bekommen müssen. In diesem Subform gibt es auch das Feld "Gruppe", sowohl als Titel als auch "Name", Schreibweise jeweils genau so.

Trotzdem kommt die Fehlermeldung "Type: com.sun.star.container.NoSuchElementException Message: ."
Tja, und dann bricht das Makro natürlich ab :(

Wo mach ich nur den Denkfehler...

Gruß,

Mike
eBayer
******
Beiträge: 556
Registriert: Do, 04.12.2008 14:33
Wohnort: Augsburg

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von eBayer »

Hallo,
ich habe mal vor einiger Zeit eine Testanwendung (Dateianhang) erstellt, in der Ihr alles finden solltet, was Euch bei der Lösung hilft.
Achtung: das Programm kann nicht ohne weiteres verändert werden.
Deshalb vor Installation der Anwendung die beiliegende ZIP_Datei entpacken und die README-Datei lesen!
In SampleDB.ini wird die Verhaltensweise der Anwendung bestimmt..... einafach mal reinschauen.
Laßt Euch nicht von den ausgeblendeten ooBase-Menues stören. Ihr braucht ja nicht alles von dem was im Beispielprogramm enthalten ist, verwenden.
Gruss und viel Erfolg
eBayer
Dateianhänge
SampleDB.zip
(121.14 KiB) 206-mal heruntergeladen
Intel(R) Core(TM)2 Quad CPU Q8200 @ 2.33GHz mit 4 GB Memory (3,2 GB aktiv)
Vista Home Premium 32 Bit
openOffice 3.1.1 mit Sun Report Builder 1.1.0 und MySql 5.1
Hauptinteresse ooBase seit 12.2008
lugflev
Beiträge: 5
Registriert: So, 23.04.2006 15:03
Kontaktdaten:

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von lugflev »

Moin eBayer!

Werd ich mir schnellstmöglich ansehen und weiterbasteln ;)

Danke und Gruß,

Mike
johahigo
Beiträge: 3
Registriert: So, 03.01.2010 12:32

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von johahigo »

Servus!!


Danke Ebayer!Werde ich mir sofort mal zu gemüte ziehen.


Mfg Daniel
Benutzeravatar
Wolf
****
Beiträge: 118
Registriert: Fr, 23.04.2004 06:48

Re: Eingabe aus Listbox eines Formulars auslesen

Beitrag von Wolf »

Hallo,

Bei mir funktioniert das so, aber mit einem Textfeld:

Code: Alles auswählen

dim oDoc as Object
dim TextInhalt as Object
dim Text as String

    oDoc = thisComponent
    TextInhalt= oDoc.drawpage.forms.getbyName("MainForm").getByName("SubForm").getbyName("txtLink")
    Text = TextInhalt.Text 
    MsgBox Text
MainForm und SubForm wurden beim Erstellen eines Datenbank-Formulars automatisch erstellt und die Textfelder dann entsprechend in die einzelnen Forms plaziert.
Beim Zugriff hatte ich dann das Problem, auf das Textfeld in der SubForm nicht zugreifen zu koennen.
Der Tip von Mike Alias "lugflev" hat mir dann den Weg gezeigt.

Also Danke

Wolf
Antworten