Seite 1 von 1

Eingabe in Join-tabelle mittels Formular

Verfasst: Mo 2. Jan 2017, 17:50
von paul16
Hallo liebes Libreoffice-Forum,

möglicherweise ist meine Frage sehr trivial, evtl. gibt es auch schon genügend Postings hierzu. Eine Suche mit der Suchmaschine brachte jedoch nicht die richtigen Treffer. Ein Link zu einer früheren Lösung oder einer FAQ würde mir sehr weiterhelfen.

Ich habe mittels ODBC mich mit einem SQLite3-db-file verbunden. Die Tabellenstruktur besteht bereits, es handelt sich um 4 Tabellen, die über einen left join miteinander verbunden werden, u.a. eine Namen- und Wertetabelle. Nun möchte ich gerne in die Wertetabelle mittels eines Formulars Werte eingeben, und zwar so, dass die Namen (und evtl. die alten Werte weiterhin angezeigt werden).

Also z.B., dass bei der angezeigten Join-Tabelle als letzte Spalte ein Eingabefeld erscheint, in das neue Werte eingegeben werden, so dass in der entsprechenden Wertetabelle die richtigen Foreign-Keys und Werte eingetragen werden.

Ausgabe von libreoffice --version
LibreOffice 5.2.4.2.1 20m0(Build:2)

LinuxVersion unter Debian stretch/sid

Hat jemand eine Idee?

Viele Grüße und Danke
Jens

Re: Eingabe in Join-tabelle mittels Formular

Verfasst: Di 3. Jan 2017, 08:05
von RobertG
Hallo Jens,

eine Tabellenstruktur ist so etwas wie die Definition der Beziehungen zueinander (Primärschlüssel - Fremdschlüssel). Das hat nichts mit LEFT JOIN zu tun. Da hast Du dann eine Abfrage.

Wie weit Base die Struktur einer SQLite2-db erkennt kann ich nicht sagen. Aber das Prinzip ist das Folgende:
Die Namen stehen in einem Hauptformular. Das kann aus einem Tabellenkontrollfeld bestehen (dann hast Du die Übersicht über alle Namen auf einmal) oder auch aus separaten Feldern.
Die Werte stehen im Unterformular. Das sollte aus einem Tabellenkontrollfeld bestehen, denn Du willst ja auch alte Werte sehen können.
Jetzt musst Du in das Unterformular gehen und dort das Kontextmenü zum Formular > Reiter "Daten" aufrufen. Bei "Verknüpfen von" und "Verknüpfen nach" stellst Du in "Von" den Primärschlüssel der Namen-Tabelle ein, in "Nach" den Fremdschlüssel in der Werte-Tabelle.

Schau Dir im Handbuch gegebenenfalls das Kapitel "Formulare" - besonders "Hauptformular und Unterformular" an.

Gruß

Robert