Ich wäre echt dankbar für jede Hilfe, da ich irgendwie nicht dahinterkomme, wie es funktionieren könnte:
Ich habe eine Tabelle mit Mitarbeitern (haben alle eine eigene Nummer) + deren Funktionen. Es können mehrere Funktionen pro Mitarbeiter sein. Je nach Funktion braucht der Mitarbeiter eine spezielle Schulung
Tabelle1
Spalte Mitarbeiter ... Spalt Funktion
Mitarbeiter A ... Funktion1
Mitarbeiter A... Funktion2
Mitarbeiter B... Funktion3
Mitarbeiter C.... Funktion1
Mitarbeiter C ... Funktion3
Zweite Tabelle zeigt welche Funktionen welche Schulungen brauchen.
Tabelle2
Spalte Schulung .. Spalte Funktion ... Spalte Funktion ....
Schulung X .. Funktion 1... Funktion2 .. Funktion3
Schulung Y... Funktion 1 ... leer ... Funktion3
Schulung Z... leer ....Funktion2 ... Funktion3
Ziel 1: verknüpfen welcher Mitarbeiter welche Schulung machen muss? (=Abfrage 1)
Nun gibt es eine dritte Tabelle: die zeigt welche Schulungen der Mitarbeiter schon gemacht hat.
Tabelle 3
Spalte Mitarbeiter ... Spalte Schulung
Mitarbeiter A... SchulungX
Mitarbeiter A... Schulung Y
Mitarbieter B... SchulungX
Mitarbeiter C ... keine
Mitarbeiter D... Schulung X
Mitarbieter D...Schulung Z
Ziel 2:
Nun muss ich die Abfrage 1 mit Tabelle 3 so verknüpfen, dass ich angezeigt bekomme, welche Schulungen der Mitarbeiter noch braucht
Es scheitert irgendwie daran, dass die Funktionen in Tabelle 2 in mehreren Spalten verteilt sind und ich nicht weiß wie ich damit umgehen soll.
Danke für eure Hilfe
Hallo,
ZitatEs scheitert irgendwie daran, dass die Funktionen in Tabelle 2 in mehreren Spalten verteilt sind
ein solcher Matrixaufbau einer Tabelle ist für eine Datenbank völlig ungeeignet. Ein Beispiel wie diese Matrixtabelle aufgebaut werden muss, findest Du in dem Link weiter unten.
Ein weiterer Fehler ist der Aufbau der Mitarbeitertabelle.
Diese darf nur die reinen Mitarbeiterdaten enthalten, keine Funktionen.
Dann wird eine Tabelle für die Funktionen benötigt, die reine Funktionsbeschreibung.
Und dann kommt die nächste Tabelle, diese macht die eigentliche Zuordnung über die Primärschlüssel von Mitarbeiter und Funktion. Ähnlicher Aufbau wie Deine jetzige Mitarbeitertabelle.
Dann kommt Tabelle 4 für Schulungen, die reinen Schulungsdaten.
Dann hätten wir Tabelle 5 in der die erledigten Schulungen erfasst werden, mit dem Primärschlüssel der Schulung und dem PS des Mitarbeiters jeweils als Fremdschlüssel.
Und dazu noch die Tabelle mit der Zuordnung der Funktion zur Schulung (die jetzige Matrix)
Hier sind also mindestens 6 Tabellen erforderlich.
Siehe auch:
http://www.access-o-mania.de/forum/index.php?topic=19370.msg106588 (http://www.access-o-mania.de/forum/index.php?topic=19370.msg106588)
Danke dir für die Hilfe,
mit der Info komm ich jetzt schon mal gut weiter. Ich hab verzweifelt versucht die Matrixtabelle irgendwie zu verarbeiten.
Zu früh gefreut. Ich dreh mich nun schon ewig im Kreis und komm nicht weiter.
Ich habe jetzt eine
- Tabelle Funktion mit Primärschlüssel Funktion und reine Auflistung der Funktionen
F1
F2
F3
- Tabelle Mitarbeiter mit PS Mitarbeiter und reiner Auflistung aller Mitarbeiter
M1
M2
M3
- Tabelle Schulungen mit PS Schulungen und reiner Auflistung aller Schulungen
S1
S2
S3
dann:
- Tabelle MitarbeiterFunktionen, die die Beziehung zwischen den Mitarbeitern und den Funktionen regelt
Spalte Mitarbeiter ... Spalte Funktion
M1 ... F1
M1 ... F3
M2 ... F2
M2 ... F3
M3 ... F1
- Tabelle SchulungFunktion, die regelt welche Schulungen von welchen Funktionen absolviert werden müssen (meine vorige Matrix)
Spalte Schulung ... Spalte Funktion
S1 ... F1
S1 ... F2
S2 ... F1
S2 ... F5
S2 ... F7
- Tabelle ErledigteSchulungen, die zeigt welche Schulungen bereits absolviert wurden
Spalte Mitarbeiter ... Spalte Schulung
M1 ... S2
M2 ... S4
M2 ... S5
Jetzt tu ich mich leicht, das so zu verknüpfen, dass alle Mitarbeiter + Funktionen + notwendige Schulungen abgebildet werden. Aber ich schaffe nicht die bereits absolvierten Schulungen mit in einer Abfrage abzubilden, um zu sehen, welche Schulungen noch ausständig sind
Bin echt dankbar für Hilfe
Hallo,
http://www.donkarl.com/?FAQ3.16
dürfte behilflich sein.