Neuigkeiten:

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

Mobiles Hauptmenü

Eingaben aus Formular als neue Einträge in Tabelle speichern

Begonnen von ormusbaxter, November 19, 2024, 21:44:50

⏪ vorheriges - nächstes ⏩

ormusbaxter

Guten Abend zusammen,

ich bin absoluter Anfänger in Sachen Access / Datenbanken und komme mit Tutorials leider nicht weiter.

Ich arbeite auf einer Intensivstation im Krankenhaus mit vielen medizinischen Geräten und vielen Mitarbeitern.
All diese Geräte müssen eingewiesen / geschult werden und diese Einweisungen müssen dokumentiert werden.

Wie weit bin ich gekommen:

Ich habe drei Tabellen erstellt:
a) Geräte

mit den Feldern
  • GeräteID
  • Hersteller
  • Gerätebezeichung
  • Beschreibung
  • inBetrieb
  • Anlage1

b) Mitarbeiter

mit den Feldern
  • MitarbeiterID
  • Vorname
  • Nachname
  • inaktiv

c)
Einweisungen

mit den Feldern
  • EinweisungsID
  • MitarbeiterID
  • GeräteID
  • Einweisungsdatum
  • Beauftragteneinweisung

Die Felder habe ich wie folgt verknüpft:


Nun habe ich ein Formular erstellt:


was funktioniert:
-Die Dropdown-Box zeigt mir die Auswahl aller hinterlegten Geräte an
-Die Mitarbeiter werden in dem Teilnehmerfeld angezeigt und sind anwählbar

was funktioniert nicht:
Wenn ich auf "Einweisung speichern" klickte, wird die Einweisungstabelle leider nicht korrekt gefüllt.

Wer kann mir helfen?

Vielen herzlichen Dank!

Oli

ormusbaxter

#1
Im Anhang noch die zugehörige Datei

Knobbi38

Hallo Oli,

ohne jetzt deine DB heruntergeladen zu haben, werden i.d.R. solche m:n Eingaben mit einem Hauptformular (Geräte) und einem Unterformular (Einweisung) umgesetzt. Dabei wird der MA üblicherweise per Kombobox ausgewählt.

Gruß
Knobbi38

MzKlMu

#3
Hallo,
mit Hafo und Ufo wird auch kein Button zum Speichern benötigt. Wobei die Formulare an die entsprechenden Tabellen/Abfragen gebunden sein müssen.
In der Beispieldb funktioniert der Button ohenhin nicht, weil das Formular nicht gebunden ist.

Ich habe Dir das mal nach dem Vorschlag von knobbi (und meinem) zusammengebastelt.

Bitte öffne das Formular "Erfassung". Sollte selbsterklärend sein.

Hinweise:
Die Nachschlagefelder in der Tabelle habe ich entfernt. In Tabellen sind Nachschlagefelder tabu.
Nur in Formularen (und nur dort) machen die als Kombinatinsfelder Sinn.
An die Fremdschlüsselfelder habe ich zu Unterscheidung mit dem PS ein _F angehängt. Ist ein Hobby von mir.  :)

PS:
Bitte aus Platzgründen Dateien nur als Zipfile hier hochladen.
Gruß Klaus

Knobbi38

Hallo,

noch drei kleine Ergänzungen zur Beispiel-DB von Klaus:

1. Das SubForm-Steuerelement 'ErfassungUfoMitarb' im Formular 'Erfassung' sollte umbenannt werden, z.B. in 'subErfassungUfoMitarb', damit das eindeutig ist und sich vom geladenenen Formular unterscheidet. Dies vermeidet spätere Referenzierungsfehler und manchmal können gleiche Namen Access auch durcheinander bringen.

2. Etwas diffiziler ist das mit einer möglichen Fehlerquelle im Unterformular 'ErfassungUfoMitarb'. Ausgehend von der Datensatzquelle sollten nur Felder der Tabelle 'Einweisungen' editierbar sein, alle Felder aus Mitarbeiter dürfen nur Anzeige-Felder sein, weil die Daten sonst eventuell ungewollt verfälscht werden könnten. Mindestens die Eigenschaft 'Aktiviert' sollte auf Nein stehen.

3. Kleine optische Anpassung: Im Unterformular 'ErfassungUfoMitarb' sollte für die Checkbox 'Beauftragteneinweisung' der DefaultWert auf 'Nein' eingestellt werden, dann passt die Anzeige für neue DS mit den Daten überein.

Üblicherweise verwende ich Präfixe für Steuerelemente, das erhöht m.M. nach die Lesbarkeit enorm - ist aber Geschmackssache.

Gruß
Knobbi38

ormusbaxter

Hallo zusammen, vielen Dank für Euren Input und die Hilfestellung - ich denke, daraus kann ich mir etwas passendes basteln :)

Lieben Gruß,
Oli

MzKlMu

Hallo Ulrich,
kurz zu Deinen Anmerkungen.

1)
Das mache ich nie, im Gegenteil, ich vergebe immer gleiche Namen, ganz bewusst. Ich hatte da noch nie Probleme.
Auch Steuerelementinhalt und Name des Steuerelement erhalten bei mir immer die gleichen Namen. Ich ändere den Namen nur dann, wenn dieser in einer Formel (z.B. Summe) verwendet wird.

2)
da hast Du recht, mache ich auch, habe ich hier aber vergessen. Es wäre auch nur das Feld Vorname das gesperrt werden müsste.

3)
Einverstanden

Und was die Präfixe betrifft, bin ich eher auch ein Gegner. Ich mache es nur bei Tabellen (tbl...) und Abfragen (qry).

Aber, ich meine ja nur. Wie Du auch angemerkt hast, ist vieles auch Geschmacksache.
Gruß Klaus

Knobbi38

Hallo Klaus,

tatsächlich hat das unter 1. Beschriebene Phänomen schon öfter zu Fehlern geführt - selber erlebt und schon oft in Foren thematisiert. Da es nicht wirklich ein großer Aufwand ist, kann ich nur wiederholt und dringend empfehlen, SubForm-Steuerelemente umzubenennen, der Assistent von Access unterlässt das nämlich. Die daraus resultierenden Fehler und Fehlermeldungen sind im Nachhinein nicht mehr einfach zu lokalisieren.

VG
Ulrich