Am Friday 13 March 2009 11:03:29 schrieb Edgar Kuchelmeister: > Hallo Robert, > > Robert Großkopf schrieb am 12.03.2009 16:03: > > Wenn sie direkt miteinander über Primärschlüssel verknüpft sind, warum > > sind es dann 2 Tabellen? Eine 1:1-Beziehung macht eigentlich nur bei viel > > zu großen Tabellen Sinn. > > Weil es - wie ich geschrieben - habe eine Inventurtabelle ist. > Von Jahr zu Jahr bleiben die Artikel ziemlich gleich, nur die Menge und > der EK-Preis ändern sich. Also habe ich diese beiden Felder in eine > externe Tabelle ausgelagert.
Deswegen gehört die Sache, die sich ändert, eigentlich ins Subformular und speichert mehr Daten als die Haupttabelle. > > Stimmt, will ich einen Datensatz neu anlegen, mache ich das zuerst in > der Artikeltabelle, dann in der Inventurdatentabelle. Deswege: Artikeltabelle ins Hauptformular. > > Das Subformular soll gar nicht editiert werden, nur das Hauptformular. > > Aus der Sicht des Formulars: > MAIN: Inventurdaten > ID(Primärschlüssel); Menge; Einzelpreis; Erfasst(Ja/Nein) > SUB:Artikeldaten > ID(Primärschlüssel); Bezeichnung; Einheit; VPE; Bemerkung; LieferantID; > Geschäftsbereich > > Verknüpfung erfolgt 1:1 über Inventurdaten,ID: Artikeldaten, ID > Gefiltert wird im SUB über Geschäftsbereich. Wie werden die ID-Felder geschrieben? Vermutlich ist das Feld aus der Artikeldaten-Tabelle ein Autowert, das aus der davon abhängigen Tabelle aber nicht (wenn Du die ID-Felder verknüpfst würde das sonst nie funktionieren - ist wie 2 Autowert-Felder in einer Tabelle). Da die Artikeldaten zuerst da sind muss die ID der Artikeldaten an die Inventurdaten übergeben werden. > > Ich hab nun noch ein anderes Problem: > Wenn ich Beziehungen einrichte Inventurdaten <-> Artikeldaten akzeptiert > die HSQLDB kein kaskadiertes Update/Löschen es bleibt immer bei "keine > Aktion" gelegentlich schmiert mir OOo dann auch ab, wenn ich was ändern > will. Dazu musst Du noch einmal klar machen, wie die ID-Felder definiert werden. Der "normale" Weg ist der, in einer der Tabellen ein Feld einzubauen, das das andere ID-Feld wiederspiegelt. Dann sind die Primärschlüssel voneinander unabhängig. Ich würde in die Inventurdaten ein Feld "artikeldatenID" einbauen - wenn die Inventurdaten von den Artikeldaten abhängig sind. Gruß Robert --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
