Access-o-Mania

Access-Forum (Deutsch/German) => Access-Hilfe => Thema gestartet von: Malina am Januar 28, 2024, 03:29:22

Titel: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 28, 2024, 03:29:22
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!!!
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: MzKlMu am Januar 28, 2024, 09:27:44
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.
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 29, 2024, 10:46:35
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: MzKlMu am Januar 29, 2024, 12:01:54
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.
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Beaker s.a. am Januar 29, 2024, 15:17:12
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 29, 2024, 16:20:47
So, hier noch die Bilder... Das andere mit dem Button kann ich gerne versuchen aber mir wäre der Doppelklick eigentlich sympathischer  8)
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 29, 2024, 16:36:36
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: MzKlMu am Januar 29, 2024, 17:25:56
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Beaker s.a. am Januar 29, 2024, 18:03:46
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 31, 2024, 09:45:22
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...
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: MzKlMu am Januar 31, 2024, 09:57:24
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.
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 31, 2024, 12:27:47
Sorry, ich bin da wohl einfach zu doof... Aber wo kann ich das auf Endlosformular stellen?
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: MzKlMu am Januar 31, 2024, 12:47:39
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.
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Malina am Januar 31, 2024, 14:13:56
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
Titel: Re: Datensatz aus Unterformular öffnen
Beitrag von: Beaker s.a. am Februar 01, 2024, 17:07:23
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.