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

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

backin
**
Beiträge: 22
Registriert: Di, 13.10.2009 09:00
Wohnort: Erding

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

Beitrag 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.
Zuletzt geändert von backin am Di, 20.10.2009 12:36, insgesamt 1-mal geändert.
Intel(R) Dual Core(TM)2, 2.5 GHz, 2 GB RAM
Windows Vista Ultimate 32Bit
Microsoft Office 2003/2007, OpenOffice.org 3.1, SQLServer 2005/2008, Oracle, MySQL 5.1
backin
**
Beiträge: 22
Registriert: Di, 13.10.2009 09:00
Wohnort: Erding

Re: Auswahlliste abhängig von Feldeintrag befüllen

Beitrag 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
Dateianhänge
test.odb
(10.96 KiB) 103-mal heruntergeladen
Intel(R) Dual Core(TM)2, 2.5 GHz, 2 GB RAM
Windows Vista Ultimate 32Bit
Microsoft Office 2003/2007, OpenOffice.org 3.1, SQLServer 2005/2008, Oracle, MySQL 5.1
eBayer
******
Beiträge: 556
Registriert: Do, 04.12.2008 14:33
Wohnort: Augsburg

Re: Auswahlliste abhängig von Feldeintrag befüllen

Beitrag 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
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
backin
**
Beiträge: 22
Registriert: Di, 13.10.2009 09:00
Wohnort: Erding

Re: Auswahlliste abhängig von Feldeintrag befüllen

Beitrag 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
Dateianhänge
test.odb
(12.28 KiB) 126-mal heruntergeladen
Intel(R) Dual Core(TM)2, 2.5 GHz, 2 GB RAM
Windows Vista Ultimate 32Bit
Microsoft Office 2003/2007, OpenOffice.org 3.1, SQLServer 2005/2008, Oracle, MySQL 5.1
backin
**
Beiträge: 22
Registriert: Di, 13.10.2009 09:00
Wohnort: Erding

Re: Auswahlliste abhängig von Feldeintrag befüllen

Beitrag 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.
Intel(R) Dual Core(TM)2, 2.5 GHz, 2 GB RAM
Windows Vista Ultimate 32Bit
Microsoft Office 2003/2007, OpenOffice.org 3.1, SQLServer 2005/2008, Oracle, MySQL 5.1
eBayer
******
Beiträge: 556
Registriert: Do, 04.12.2008 14:33
Wohnort: Augsburg

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

Beitrag 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
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
backin
**
Beiträge: 22
Registriert: Di, 13.10.2009 09:00
Wohnort: Erding

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

Beitrag 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
Intel(R) Dual Core(TM)2, 2.5 GHz, 2 GB RAM
Windows Vista Ultimate 32Bit
Microsoft Office 2003/2007, OpenOffice.org 3.1, SQLServer 2005/2008, Oracle, MySQL 5.1
Antworten