Hallo,
ich habe mich entschlossen, das Thema Access Datenbanken für mich zu erschließen. Zwei Fachbücher habe ich bereits gekauft und die berufliche Weiterbildung iniziiert. Vielleicht ist es jetzt etwas naiv, aber ich versuche mich gerade an einer Access Datenbank zur Verwaltung von Mitarbeitern - und stehe bereits vor den ersten Problemen.
In eine Tabelle schreibe ich alle relevanten Informationen zu den Mitarbeitern (Familienname, Vorname, Geburtsdatum, Geschlecht, Laufbahn, Funktion und Amtsbezeichnung). In eine andere Tabelle schreibe ich das Geschlecht (mänlich, weiblich) und weise es der Tabelle Personen/Feld Geschlecht als Referenz zu. Das klappt auch super.
Jetzt möchte ich aber abhängig von der Laufbahn (mittlerer Dienst, gehobener Dienst, höherer Dient) die entsprechenden Amtsbezeichnungen als Auswahl haben. Wie bewerkstellige ich so etwas?
Ein erster Ansatz wäre, die jeweiligen Amtsbezeichnungen in separate Tabellen zu schreiben, aber wie weise ich das dann zu?
Kann mir bitte jemand einen Tipp geben - so als Gedankenanstoß? Vielen herzlichen Dank.
Tino
Hallo,
dazu werden weitere Tabellen benötigt:
tbl_Laufbahnen (1-Tabelle)
LB_ID (PK)
LB_Bezeichnung
tbl_Amtsbezeichnungen (n-Tabelle)
AB_ID (PK)
AB_LB_ID (FK)
AB_Bezeichnung
Mit diesem Prinzip: http://www.donkarl.com/?FAQ4.36
können dann in einem Kombifeld die von der Laufbahn zugehörigen Amtsbezeichnungen angezeigt/ausgewählt werden.
btw: Achte auf den Einsatz von Primär- und Fremdschlüsseln (mit Datentyp Autowert, bzw. Long Integer) und setze die Beziehungen über diese Schlüsselfelder. ("Vernünftige" Benamsung sollte auch nicht unerwähnt bleiben.)
Ja, das hilft schon sehr weiter. Vielen Dank. Ich arbeite mich dann mal durch die Materie ;)
Vg, Tino
Ich wollte heute einen Bericht erstellen, der mir die Personendaten und dazu die Dienstgrade ausgibt. Eigentlich ganz einfach und es funktioniert auch alles soweit NUR mit der Einschränkung, dass auf dem Bericht im Feld Dienstgrad eine Auswahlliste gezeigt wird. Eigentlich sollte dort nur der Wert stehen, der bei der jeweiligen Person als Dienstgrad gewählt wurde. Wie löst man nun dieses Problem wieder??? Vielen Dank schon einmal für eine Antwort.
Vg, Cohors
Hallo,
mache aus der Auswahlliste ein Textfeld (Rechsklick > Ändern zu).
Zitatder bei der jeweiligen Person als Dienstgrad gewählt wurde.
ein Dienstgrad kann sich ja ändern und welche Dienstgrade mal waren (Historie), will man ja möglicherweise auch wissen. Wie hast Du das gelöst.
Zeige mal ein Bild des Beziehungsfensters.
Hallo,
Zitat
dass auf dem Bericht im Feld Dienstgrad eine Auswahlliste gezeigt wird. Eigentlich sollte dort nur der Wert stehen, der bei der jeweiligen Person als Dienstgrad gewählt wurde.
Das lässt darauf schließen, dass Nachschlagefelder in Tabellen(!) verwendet werden. Entferne diese aus den Tabellen.
Danach erstellst Du für die Berichts-Eigenschaft "Datenherkunft" eine Abfrage, die über alle Tabellen, aus denen Daten gebraucht werden, verknüpft. Ziehe aus allen Tabellen die Sternchen in je eine Abfragespalte.
Danach änderst Du wie von Klaus beschrieben das Kombifeld (Auswahlliste?) zu einem Textfeld und bindest das Textfeld an den entspr. Tabellenfeldnamen (Steuerelementinhalt: AB_Bezeichnung , wenn das der "Dienstgrad" ist)
Oh je, ich denke, ich muss noch viel lernen... :-\
Könnte mir in Hinsicht der Tabellen und Beziehungen jemand unter die Arme greifen - nur wenn es keine Mühe macht, so dass ich das "Prinzip" dahinter verstehe? Momentan hab ich irgendwie gar keinen Plan mehr... :'(
Vg, Tino
Hallo,
dann lad doch mal die DB (mit ein paar aussagekräftigen Beispiel-Einträgen) hier hoch, vorher komprimiert/repariert und als Zip-Datei....
Hallo Tino,
ZitatKönnte mir in Hinsicht der Tabellen und Beziehungen jemand unter die Arme greifen
Schau dir Mal die Anlage an.
gruss ekkehard
Ich habe mich jetzt eine ganze Weile mit den abhängigen Kombinationsfeldern rum geplagt, aber ich komme zu keiner befriedigenden Lösung. Als Anhang stelle ich mal meine Beziehungsstruktur ein, vielleicht liegt da ja schon alles schief. könnte sich das bitte jemand anschauen und mir einen Tipp geben? Prinzipiell geht es darum, dass wenn ich eine bestimmte "Laufbahn" auswähle, in einem zweiten Kombinationsfeld auch nur die zu dieser Laufbahn (mittlerer, gehobener, höherer Dienst) passenden Dienstgrade erscheinen. Wie macht man das nur...
Danke schon mal für ein paar Hinweise.
VG, Tino
Hab grad gesehen, dass die Anlage doppelt hochgeladen wurde, wie kann man das korrigieren???
Hallo,
das 2.Bild habe ich Dir gelöscht.
Die Beziehung zur Laufbahn bei der Person ist doppelt gemoppelt und somit überflüssig. Der Dienstgrad hat ja einen Bezug zur Laufbahn, wenn also der Dienstgrad festliegt, hat man automatisch auch die Laufbahn.
Siehe Bild.
Mit diesem Datenmodell kannst Du aber nur den momentanen Dienstgrad erfassen, willst Du den Verlauf der Dienstgrade nicht wissen, denn Personen werden ja auch befördert ?
Die gleiche Frage gilt sinngemäß auch für die Funktionen und die Dienstgruppe.
Hi Klaus, danke für Deine Antwort. Ich möchte die Datenbank erst einmal einfach halten - sie dient primär dazu, dass ich ein Verständnis für Access aufbaue (ich weiß, man sollte erst mit der DB anfangen, wenn sie fertig modelliert ist).
Aber wie "formuliere" ich nun die abhängigen Kombifelder? Könnte mir da jemand unter die Arme greifen - so quasi als Denkanstoß?
Vielen Dank schon mal.
VG, Tino
Hallo,
die Implementierung der von mir genannten Funktionen erfordert einen ganz anderen Tabellenaufbau, denn dann liegen n:m Beziehungen vor. Die bisher erstellten Formulare waren dann für die Katz, denn die kannst Du dann nicht mehr verwenden. Es ist also nur scheinbar einfacher und viel unnütze Arbeit.
Zu den abhängigen Kombifeldern:
FAQ 4.36 Abhängige Kombi/Listenfelder (http://www.donkarl.com?FAQ4.36)