Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Datensatz aus Unterformular öffnen

Begonnen von Malina, Januar 28, 2024, 03:29:22

⏪ vorheriges - nächstes ⏩

Malina

Guten Tag zusammen
Ich kenn mich in Access leider nicht sooo gut aus! Deshalb bräuchte ich mal eure geschätzte Hilfe...
Ich habe eine Datenbank für das Inventar erstellt. Dabei habe ich zwei Tabellen:
tbl_Inventar
tbl_Reparatur
Daraus habe ich zwei Formulare erstellt:
frm_Inventar
frm_Reparatur
Im frm_Inventar ist die tbl_Reparatur ersichtlich. Dort werden mir die einzelnen Reparaturen für das entsprechende Gerät angezeigt. Ziel ist es, dass ich pro technisches Gerät (Kamera, Objektiv u.s.w.) jeweils einen kompletten Verlauf habe was damit wann passiert ist.
Nun möchte ich mit Doppelklick auf die entsprechende Reparatur das Formular (frm_Reparatur) öffnen und den entsprechenden Datensatz welchen ich angeklickt habe gleich anzeigen lassen.
Geht das irgendwie?
Verknüpft sind die Tabellen mittels Beziehungen zu den entsprechenden Primärschlüsseln:
ID_Inventar
ID_Reparatur
Kann mir da jemand weiter helfen?
Besten Dank und schöne Grüsse!!!

MzKlMu

Hallo,
ZitatVerknüpft sind die Tabellen mittels Beziehungen zu den entsprechenden Primärschlüsseln:
ID_Inventar ID_Reparatur
Das kann nicht sein. Eine Beziehung über 2 Primärschlüssel würde eine 1:1 Beziehung ergeben. Dann könntest Du zu einem Geräte immer nur eine Reparatur erfassen.

Zeige mal ein Bild des Beziehungsfensters.
Gruß
Klaus

Malina

#2
Also, anbei zwei Bildern. Einmal die Beziehungen und einmal das Formular Inventar. Dort möchte ich jetzt, dass ich auf der Tabelle die entsprechende Reparatur mittels Doppelklick im Formular Reparatur wieder öffnen kann und diese entsprechend bearbeiten...
Ob die Beziehung zwischen Inventar und Reparatur so stimmt ist ? Auf jeden Fall zeigt es mir die Reparaturen an (alle) und nur jene welche sich auch auf das entsprechende Teil beziehen.

Links entfernt (MzKlMu)

Hoffe das klappt so!
Besten Dank und liebe Grüsse

MzKlMu

Hallo,
bitte Bilder hier im Forum hochladen. Ich lade keine Dateien von fremden Quellen.

Wenn Du den Antworten Button klickst, findest Du unten Attachments and other options. Hier kannst Du Dateien hochladen.
Gruß
Klaus

Beaker s.a.

Hallo Malina,

Stelle die Ansicht des UFo auf "Endlos" und erstelle einen Button im
Detailbereich. Der taucht dann hinter jedem DS auf, - Code
Private Sub cmdZeigeRep_Click()
    DoCmd.OpenForm _
           Formname:="frmReparatur", _
           OpenArgs:=Me.ReparaturID_F
'weitere Parameter nach Wunsch/Anforderung
End Sub
In frmReparatur ergänzt du das Form_Open-Event mit
Me.Filter = "ReparaturID = " & Me.OpenArgs
Me.FilterOn = True

gruss ekkehard
--
Frauen aller Länder vereinigt euch! Wir brauchen eine Wiedergeburt des Matriarchats.
Und schickt den Papst in die Wüste! Da kann er 40 Tage auf God(o)t warten.

Malina

So, hier noch die Bilder... Das andere mit dem Button kann ich gerne versuchen aber mir wäre der Doppelklick eigentlich sympathischer  8)

Malina

Ach so, das ist ja nicht wirklich ein Unterformular. Sondern die Tabelle (frm_Reparatur) ist im Formular (frm_Inventar) integriert... Deshalb klappt das mit dem Button im Unterformular gar nicht. Kann ich noch lange versuchen  ;D

MzKlMu

Hallo,
Zitataber mir wäre der Doppelklick eigentlich sympathischer
Der Code passt auch für einen Doppelklick.
ZitatSondern die Tabelle (frm_Reparatur) ist im Formular (frm_Inventar) integriert..
Das ist ne Krücke, mache ein richtiges Ufo.

Anmerkung:
Stelle in allen Beziehungen grundsätzlich referentielle Integrität ein.
Bitte keine Nachschlagefelder in den TAbellen direkt anlegen. Das Tremdschlüsselfeld in der Reparaturtabelle sollte nicht Inventar heißen, sondern ID_Inventar_F. Ich hänge zur zweifelsfreien Unterscheidung an die Fremdschlüsselfelder immer ein _F an.

ZitatVerknüpft sind die Tabellen mittels Beziehungen zu den entsprechenden Primärschlüsseln:
ID_Inventar ID_Reparatur
Diese Aussage ist irreführend, daher habe ich nach dem Bild gefragt
Gruß
Klaus

Beaker s.a.

Hallo Klaus,
Zitatmache ein richtiges Ufo.
Was meinst du mit "richtiges", - Endlos-Ansicht?
Ich habe aber auch dieses nicht verstanden
ZitatSondern die Tabelle (frm_Reparatur) ist im Formular (frm_Inventar) integriert..
Doppelklick finde ich blöd, - 1. nicht sofort für den Anwender
erkennbar, 2. man muss das für jedes Feld codieren, oder 3. mit
unsichtbaren Controls rumfrickeln.
Da pack ich doch lieber gleich 'nen Button in die Zeile und gut
ist.

gruss ekkkehard
--
Frauen aller Länder vereinigt euch! Wir brauchen eine Wiedergeburt des Matriarchats.
Und schickt den Papst in die Wüste! Da kann er 40 Tage auf God(o)t warten.

Malina

Also, ich habe die Tabelle gelöscht und ein Unterformular eingesetzt. Aber das schnall ich jetzt echt nicht!
In der Entwickleransicht habe ich ein Formular welches ich entsprechend bearbeiten kann mit der Ansicht. Wenn ich anschliessend auf Formularansicht klicke, zeigt es mir trotzdem wieder eine Tabelle an... Was mache ich falsch?
Ich habe die entsprechenden Bilder angehängt.
Die Beziehungen habe ich angepasst und die Fremdschlüssel umbenannt...

MzKlMu

Hallo,
Du musst das Ufo in den Format Eigenschaften auf Endlosformular umstellen. Da steht jetzt da steht jetzt Datenblatt drin.

Du solltest auch noch die letzte Beziehung noch mit RI ausstatten.
Gruß
Klaus

Malina

Sorry, ich bin da wohl einfach zu doof... Aber wo kann ich das auf Endlosformular stellen?

MzKlMu

Hallo,
zu hast das Unterformularsteuerelement markiert und nicht das Formular selbst.
Gehe in das Datenbankfenster (wo die Formulare gelistet sind). Öffne dieses Formular im Entwurf, dann kannst Du das einstellen.
Gruß
Klaus

Malina

Perfekt... So passt es doch!
Jetzt muss ich nur noch im Unterformular den Button so programmieren, damit direkt der entsprechende Datensatz im Formular geöffnet wird. Das krieg ich sicherlich irgendwie hin  ;D

Beaker s.a.

Habe ich dir doch geschrieben. Da musst du nur die Feldnamen anpassen.

Zur Entwurfsansicht des UFos kommst du auch, wenn du oben links im Control
vor dem "Lineal" auf das graue Kästchen des Forms klickst.
--
Frauen aller Länder vereinigt euch! Wir brauchen eine Wiedergeburt des Matriarchats.
Und schickt den Papst in die Wüste! Da kann er 40 Tage auf God(o)t warten.