Seite 1 von 1

[Gelöst] Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Di, 13.10.2009 14:38
von backin
Habe dies versehentlich in der Kategorie "OOo Basic..." eingestellt. Es handelt sich aber um ein Problem in OOo Base.
-------------------------------------------------------------
Liebe Forummitglieder,

möchte folgendes realisieren:
in einem Formular befindet sich ein SubFormular. Die Daten im SubFormular werden in einer Tabellenansicht dargestellt. Hier habe ich die Felder "Kategorie" und "Unterkategorie". Beide Felder sind als Kombinationsfelder definiert. Beim Aufklappen des Kombinationsfeldes "Unterkategorie" sollen nur die Einträge dargestellt werden, die zum ausgwählten Eintrag in der Auswahlliste "Kategorie" passen. Habe es bereits über SQL versucht, weiss aber nicht wie ich die Auswahlliste "Kategorie" ansprechen soll und ob es überhaupt möglich ist.

Wäre für eine Hilfestellung sehr dankbar.

Schöne Grüße,
D.B.

Re: Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Di, 13.10.2009 20:54
von backin
Damit Ihr es Euch besser vorstellen könnt, habe ich eine Testdatenbank hochgeladen. Im Formular frmTitel soll im SubFormular die Auswahlliste UKategorie mit den Einträgen gefüllt werden, welche abhängig von der Kategorie sind.

Das Datenmodell könnte man auch anders lösen: in der tblKategorie ein ID-Feld aufnehmen und in der tblTitelKategorie der RefTitelID die KategorieID statt den Texten zuordnen

Re: Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Di, 13.10.2009 22:13
von eBayer
Du solltest Kategorie und Unterkategorie in getrennten Tabellen führen!

TblKategorie:
Feld_1: ID = PrimaryKey
Feld_2: Text

TblUnterkategorie:
Feld_1: ID = PrimaryKey
Feld_2: KatID (verbindet mit TblKategorie)
Feld_3: Text

Darüber hinaus erscheinen mir die kombinierten Indexe dort nicht notwendig.
Die kannst Du Sortierung kannst Du leicht in Abfragen etc. von Fall zu Fall erzeugen.
So kannst Du dann auch Dein gewünschtes Formular stricken.
Gruß eBayer

Re: Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Mi, 14.10.2009 07:59
von backin
Hallo eBayer,

habe die Strukturen nach deinen Vorgaben geändert. Bei der Zuordnung von Titel, Kategorie und UKategorie habe ich jeweils die IDs verwendet. Kann man in Kombinationsfeldern mehrere Spalten anzeigen lassen und mit gebundenen Spalten arbeiten? Wie bekomme ich jetzt die Unterkategorien in Abhängigkeit von der gewählten Kategorie zu sehen?

Danke und Gruß, Dieter

Re: Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Di, 20.10.2009 12:35
von backin
Habe es nach intensiver Einarbeitung geschafft die Datenbank zum Laufen zu bekommen. Danke nochmal an eBayer für die nützlichen Beispiele, die mir weitergeholfen haben.

Re: [Gelöst] Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Di, 20.10.2009 13:15
von eBayer
gratuliere..... ich wusste es - Du beißt Dich durch.
Hier noch ein kleiner Hinweis, um mehrere Felder in Listboxen aufzuzeigen:

SELECT "FeldA" || ' ' || "FeldB", "ID" FROM "MyTable" AS "MyTable"

Dieses ist das SQL-Statement aus der Listbox.....
In diesem Fall werden FeldA und FeldB getrennt durch eine Leerstelle in der Listbox dargestellt.
Gruß eBayer

Re: [Gelöst] Auswahlliste abhängig von Feldeintrag befüllen

Verfasst: Do, 22.10.2009 14:28
von backin
Danke für den Hinweis. Die Concatinierung in SQL ist mir bekannt. Habe Jahre lang mit Oracle gearbeitet. Bei der Unterkategorie befülle ich nun die Listbox mit einem über ein Makro generiertem SQL-Statement. Funktioniert einwandfrei. Die Syntax in OOo war mir bisher fremd. Bin eher auf der Microsoft-Schiene (VBA, .NET) unterwegs.

Gruß, Dieter