Hallo Thomas,
ich nehme an, die "Grundtabelle" soll die Veranstaltungen aufnehmen.
Ich wüsste bei deiner Vorstellung mit Listenfeldern nur den Weg, das
Listenfeld für die Räume abhängig vom gewählten Ort anzupassen, das kann
geschehen, indem die Datenquelle als SQL deklariert ist und das
SQL-Stament geändert wird (SELECT Raum, ID_Raum FROM Räume WHERE ID_Ort
= id_ort). Diese Änderung musst du aber in einem Makro durchführen, das
du beim Datensatzwechsel in dem Formular, wo der Ort eingetragen wird,
anstößt; dort musst du die Variable id_ort (deshalb kleingeschrieben)
ermitteln und damit das SQL zusammenbasteln.
Ich weiß nicht, ob Makros für dich möglich sind, aber ich denke, etwas
in der Art ist da der einzige Weg. (Es sei denn, Robert kommt noch mit
einem tollen Trick.)
Du könntest aber auch einen anderen Weg gehen, wenn Makros nicht in
Frage kommen:
Zum Erfassen von Veranstaltungen verwendest du ein Formulardokument, das
folgende Formularstruktur hat:
Ort
+- Raum
+-Veranstaltung
Zur späteren Übersicht über Veranstaltungen verwendest du ein anderes
Formulardokument, das ungefähr so aussehen dürfte wie deine jetzige
Vorstellung.
Der Vorteil ist, dass beim ersten Formulardokument LibO die Verknüpfung
der Tabellen machen kann und du kein Makro brauchst. Nachteil ist, dass
du zwei Formulare hast, aber es hängt sehr von der Arbeitsweise ab, ob
das wirklich ein Nachteil ist oder nur Gewöhnungssache.
Ich habe das jetzt nicht konkret getestet, aber bin mir ziemlich sicher,
dass das so funktioniert.
Gruß
Gerhard
Am 14.01.2020 um 20:01 schrieb Thomas:
Hallo,
ich möchte in einer Datenbank Orte und zugehörige Räume für
Veranstaltungen aufnehmen. Ich habe da Ort1, Ort2, Ort3 usw. Im Ort1
gibt es Raum1, Raum2, im Ort2 Raum3, Raum4, Raum5, im Ort3 gibt es Raum6...
Die Orte sind in einer Tabelle mit ID_Ort und Ort, die Räume in einer
anderen Tabelle mit ID_Raum, ID_Ort und Raum. Damit weiß ich, welcher
Raum in welchem Ort ist.
In einem Formular werden zunächst die Orte mit Hilfe eines Listenfeldes
ausgewählt und deren ID_Ort in die Grundtabelle eingetragen. Das
funktioniert einwandfrei. Nun möchte ich im selben Formular für den
vorher eingetragenen Ort einen zugehörigen Raum auswählen. Das
Listenfeld soll mir also nur die relevanten Räume anbieten und die
entsprechende ID_Raum in die Grundtabelle eintragen. Für Ort2 dürften
mir also nur Raum3, Raum4 oder Raum5 angeboten werden.
Da habe ich schon viel probiert, schaffe es aber einfach nicht und bitte
nun um Hilfe
Viele Grüße
Thomas
--
Liste abmelden mit E-Mail an: users+unsubscribe@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.