Index in einem Unterformular automatisch setzen

Datenbanklösungen mit AOO/LO

Moderator: Moderatoren

Nasdaqer
Beiträge: 2
Registriert: Sa, 01.01.2005 17:16
Wohnort: Bremen

Index in einem Unterformular automatisch setzen

Beitrag von Nasdaqer »

Hiho!

Ich habe ein Hauptformular und ein Unterformular. Beide sind über ein eindeutiges Feld miteinander verbunden.

Im Hauptformular werden die Daten einer Firma angezeigt. Im Unterformular stehen verschiedene Aktionen, die mit der Firma gelaufen sind.

Nun möchte ich im Unterformular eine neue Aktion anlegen und dabei soll das Feld das die beiden Tabellen miteinander verbindet automatisch vorbelegt sein. Das Feld heisst "Firma_ID".

Wie stelle ich das an. Momentan muss es tatsächlich für den Benutzer sichtbar sein und er muss die ID von Hand einpflegen. Das ist natürlich Käse!

Wer weiß Rat?

Michael
SteffenOOo
**
Beiträge: 49
Registriert: Mi, 22.09.2004 18:24

Wozu dan Verknüpfen

Beitrag von SteffenOOo »

Nur noch eine kleine Nebenbemerkung!

Das funktioniert übrigens auch mit der DBASE Datenbank von OpenOffice! obwohl dies keine relationale Datenbank ist. Wozu dann eine eindeutige Verknüpfung überhaupt herstellen?
Sie dient eigentlich (zumindest in diesem Beispiel) nur für eine Abfrage im Abfragenentwurf. Eine Abfrage über mehrere Tabellen funktioniert nur mit einer eindeutigen Verknüpfung (also bei Dbase dann eben nicht!)


MFG Steffen
Manuel
Beiträge: 4
Registriert: Di, 23.05.2006 21:52

Beitrag von Manuel »

Hallo,

Wenn du nun in diesem Unterformular einen neuen Aktions-Datensatz einer Firma hinzufügst, dann füllt OOo den Fremdschlüssel "FS_Firma_ID" automatisch mit der Variablen, in der ja der Schlüssel des Hauptformulars hinterlegt ist. Das Feld braucht nun nicht mehr im Formular angezeigt zu werden.
sorry, dass ich diesen alten Thread nochmal öffnen muss, aber gerade dieses automatisch Einfügen funktioniert bei mir nicht.

Die Datensätze werden korrekt angezeigt (auf das Beispiel bezogen: Bei jeder Firma werden auch nur die Aktionen angezeigt, die zu der Firma gehören), :D
aber wenn ich neue Aktionen einfügen will, ist FS_Firma_ID immer 0. :shock:

Ich nutze OO 2.0 und eine MySQL-Datenbank.

Habt ihr da ne Idee? Mein Kopf platzt bald... :evil:

Tschö
Manuel

PS: Auch das Verändern existierender Aktionen funktioniert, nur eben das Einfügen nicht! :cry:
riedlka1
*
Beiträge: 12
Registriert: Fr, 31.03.2006 09:57

ID ist bei Eingabe immer 0

Beitrag von riedlka1 »

Vermutlich hast Du bei der Erstellung der Firmentabelle das ID Feld nicht auf Autoincrement und keine Duplikate erlauben gesetzt, dann erhöht es sich bei der Eingabe eines neuen Datensatzes nämlich automatisch.
Manuel
Beiträge: 4
Registriert: Di, 23.05.2006 21:52

Beitrag von Manuel »

nee, Autoincrement ist gesetzt und Duplikate sind erlaubt.
FS_Firma_ID soll sich ja nicht automatisch erhöhen, sondern die Firma_ID des herachisch höheren Formulars annehmen... habt ihr da noch ne Idee?
Manuel
Beiträge: 4
Registriert: Di, 23.05.2006 21:52

Beitrag von Manuel »

Ich habe das Problem jetzt in der Weise "gelöst", dass ich von MySQL zu PostgreSQL gewechselt habe.
Nun bleibt nur noch das Problem, dass, wenn ich einen neuen Datensatz im Hauptformular anlege, ich erst neue Datensätze im Unterformular anlegen kann, wenn ich im Hauptformular einen Datensatz zurück- und dann wieder vor gehe.
Habt ihr ne Idee, wie ich das noch lösen kann?

Tschö
Manuel
Antworten