Januar 18, 2022, 12:23:26

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


ID wird in Unterformular nicht wiedergegeben

Begonnen von Sequel, November 15, 2021, 09:57:50

⏪ vorheriges - nächstes ⏩

Sequel

Hallo, ich habe 4 Tabellen (Hersteller, Produktkategorien, Produktunterkategorien, Produkte), die jeweils mit Fremdschlüssel in hierarchischer Beziehung zueinander stehen. Mit dem Formularassistenten habe ich ein Formular erzeugt, das einen Hersteller mit den Unterformularen Produktkategorien und Produktunterkategorien anzeigt. Dies funktioniert. Mittels cmdButton rufe ich das in der letzten Hierarchiestufe befindliche Unterformular Produkte auf. Beim Anlegen eines Datensatzes in diesem Unterformular wird zwar automatisch die ID_Produkte erzeugt, jedoch nicht die Fremd_ID des Unterformulars Produktunterkategorie automatisch übernommen. Manuell kann ich diese eintragen. Ich wäre dankbar, wenn mir jemand einen Hinweis geben kann, wie die Fremd_ID des Unterformulars Produktunterkategorie im Formular Produkte automatisch erzeugt werden kann.

ebs17

Bei gebundenen Formularen übernimmt ein verknüpftes Unterformular automatisch die ID vom Hauptformular.
Mit freundlichem Glück Auf!

Eberhard

Sequel

Sorry, ich bin noch nicht ganz firm mit Access. Woran erkenne ich, ob das Formular gebunden ist?

Sequel

Ich habe unter Formulareigenschaften -> Andere -> "Gebunden" auf "ja" gestellt. Dennoch bekomme ich bei der Dateneingabe im Unterformular Produkte den Hinweis "Der Datensatz kann nicht hinzugefügt oder geändert werden, da ein Datensatz in der Tabelle "Produktunterkategorien" mit diesem Datensatz in Beziehung stehen muss.

tbl_Produkte hat jedoch den Fremdschlüssel von tbl_Produktunterkategorien mit Beziehung 1:n.

Sequel

Zitat von: ebs17 am November 15, 2021, 10:13:51Bei gebundenen Formularen übernimmt ein verknüpftes Unterformular automatisch die ID vom Hauptformular.

Ich habe unter Formulareigenschaften -> Andere -> "Gebunden" auf "ja" gestellt. Dennoch bekomme ich bei der Dateneingabe im Unterformular Produkte den Hinweis "Der Datensatz kann nicht hinzugefügt oder geändert werden, da ein Datensatz in der Tabelle "Produktunterkategorien" mit diesem Datensatz in Beziehung stehen muss.

tbl_Produkte hat jedoch den Fremdschlüssel von tbl_Produktunterkategorien mit Beziehung 1:n.

DF6GL

Hallo,



im Hauptformular (frmProdukte) muss in seiner Eigenschaft Datenherkunft den Tabellennamen tbl_Produkte enthalten und das (Unter-)Formular (frmProduktunterkategorien) den Tabellennamen tbl_Produktunterkategorien.

In frmProdukte muss ein UFO-Steuerelement platziert sein, das das Form frmProduktunterkategorien anzeigt und die UFO-St.-El.-Eigenschaften Verknüpfen von/nach müssen die Schlüsselfelder enthalten.


Sequel

Zitat von: DF6GL am November 15, 2021, 11:37:33Hallo,



im Hauptformular (frmProdukte) muss in seiner Eigenschaft Datenherkunft den Tabellennamen tbl_Produkte enthalten und das (Unter-)Formular (frmProduktunterkategorien) den Tabellennamen tbl_Produktunterkategorien.

In frmProdukte muss ein UFO-Steuerelement platziert sein, das das Form frmProduktunterkategorien anzeigt und die UFO-St.-El.-Eigenschaften Verknüpfen von/nach müssen die Schlüsselfelder enthalten.



ich habe das alles umgesetzt, dennoch bekomme ich immer noch die o.e. Fehlermeldung. Wenn ich die Daten direkt in die Tabelle eingebe, bildet sich die ID_Produktunterkategorie automatisch in der tbl_Produkte. Im Ufo Produkte tut sie das nicht. Ich muss ergänzen, dass die Daten der Tabellen Hersteller, Produktkategorien und Produktunterkategorien auf einem Formular mit 2 Unterformularen abgebildet sind. Das Unterformular Produkte wird per Steuerelement (cmd-Button) vom Unterformular Produktunterkategorien aufgerufen. Die Verbindung funktioniert insofern, dass wenn ich die ID_Produktunterkategorien von Hand in das Ufo Produkte eingebe, diese angezeigt werden, sobald ich per Steuerelement aus dem Ufo Produktunterkategorien die Produkte dieser Produktunterkategorie aufrufe.

MzKlMu

Hallo,
die ID wird immer von oben nach unten durchgereicht.
Dabei sind im Hafo 1-Daten und im Ufo n-Daten anzuzeigen.
Das Hafo und das Ufo müssen über die Schlüsselfelder verknüpft sein.
Was steht bei Dir in den Eignschaften des Ufo bei Verknüpfen von/nach ?

Zeige mal ein Bild es Beziehungsfensters.

Und lösche unbedingt die Standardwerte in den Fremdschlüsselfeldern, da trägt Access automatisch 0 ein, bitte einfach löschen.

Wenn Du nicht klar kommst, lade ein Beispiel hoch. Anonyme Daten, Datenreduziert, komprimiert/repariert und als Zip Datei.
Gruß
Klaus

Beaker s.a.

Hallo,
Das Datenmodell scheint mir eher suboptimal.
ZitatHersteller 1:n Produktkategorien 1:n Produktunterkategorien 1:n Produkte
erscheint mir etwas realitätsfern.
Produkte und Hersteller sollten im Sinne der Nachhaltigkeit über eine n:m-Tabelle
miteinander in Beziehung stehen.
Je nach dem, wessen Eigenschaft die P-Kategorie ist,- Hersteller oder Produkt, (die
Realität des TS ist in der Beziehung nicht bekannt) würde ich auch zwischen diesen
beiden Tabellen (Hersteller oder Produkt n:m Unterkategorie) eine Tabelle einrichten.
Die Beziehung Kategorie/Unterkategorie bleibt natürlich wie sie ist.
Da wird auch der Formularaufbau einfacher. In je einem HFO (Hersteller/Produkte) gibt
es ein UFo (Basis n:m) mit den entsprechenden, zugehörigen DS. Das UFo/UFo Kategorien/
Unterkategorien in das entsprechende HFo.

gruss ekkehard
--
Beaker s.a., der lieber an seinem eigenen Projekt arbeiten würde/sollte, aber irgendwie immer gerne seinen Senf dazu gibt ;-)
S.M.I².L.E.

ebs17

ZitatWenn ich die Daten direkt in die Tabelle eingebe, bildet sich die ID_Produktunterkategorie automatisch in der tbl_Produkte.
Da wirkt dann wohl noch solcher Kram wie Nachschlagefelder in Tabellen - sehr geeignet, Dinge zu verschleiern. Diesen Frosch will wohl fast jeder küssen, ehe er sich nach seinem Prinzen umschaut.
Mit freundlichem Glück Auf!

Eberhard

Sequel

November 15, 2021, 15:54:33 #10 Letzte Bearbeitung: November 15, 2021, 18:44:56 von MzKlMu
Vielen Dank, Klaus. Das hat mich auf die Lösung gebracht! Im ufo fehlte die Verknüpfung zum Hauptformular.
Gruß
Jörg

Sequel

November 15, 2021, 15:57:27 #11 Letzte Bearbeitung: November 15, 2021, 18:43:54 von MzKlMu
Hallo Ekkehard, die m:n-Beziehung ist ein valider Hinweis. Vielen Dank dafür.
Gruß
Jörg

Sequel

Ich danke Euch allen für Eure wertvollen Hinweise und Eure Hilfe, die zur Lösung geführt hat.  :-)

Beste Grüße
Jörg