Hallo,
leider wurde ich bei der Suche nicht fündig.
Mein Wunsch ist eine Datenbank mit Schulungen für Mitarbeiter, selectiert nach Funktion des jeweiligen Mitarbeiters.
ich habe eine tblMADaten
eine tblSchulungen
und eine tblMASchulungen
Die Mitarbeiter sind nach gewissen Funktionen(Teams) zugeordnet. Für jedes Team ist eine gewisse Schulungsmatrix vorhanden. Manche MA machen aber alle Schulungen. Hin und wieder kommen neue Schulungen dazu. Machne MA bekommen Sonderschulungsmaßnahmen. Manche Schulungen wiederholen sich. Meist jährlich.
Mir fällt leider nichts ein, wie ich das realisieren soll. Mach ich das über eine Kreuztabellenabfrage?
Ich hoffe mir kann hier jemand weiterhelfen.
Vielen Dank
Hallo,
ein Kreuztabellenabfrage ist da wenig sinnvoll, Du könntest auch nichts eintragen, eine Kreuztabellenabfrage dient nur der Darstellung.
Wo und wie wird die Zusammenstellung der Teams gespeichert?
Was verstehst Du unter Schulungsmatrix?
Tabellen die als Matrix aufgebaut sind, sind für Access/Datenbank ungeeignet.
Ich hab noch eine tblTeam. Mit dem Inhalt TeamA, TeamB, TeamC.... usw.
In meiner tblMADaten hab ich natürlich die ganzen persönlich Daten sowie eine Spalte "Team".
Jeder MA wird einem Team zugewiesen. Und je nach Team verschiedene Schulungen.
Hallo,
Du benötigst eine extra Tabelle zur Zusammenstellung der Teams.
Oder kann ein Mitarbeiter für immer nur einem Team angehören?
Genau.
Es sind natürlich mehrere MA in einem Team. Aber ein Mitarbeiter kann immer nur in einem Team sein.
Hallo,
ZitatAber ein Mitarbeiter kann immer nur in einem Team sein.
für immer?
Was machst Du, wenn es im nächsten Jahr eine andere Teamzusammenstellung gibt?
Wenn Du dann eine andere TeamID einträgst, sind die alten Teamzusammenstellungen weg. Und wenn ein Mitarbeiter keinem Team angehört?
Und meine Frage:
Zitat von: MzKlMu am Mai 06, 2014, 14:35:58
Was verstehst Du unter Schulungsmatrix?
Da es sich um einen Produktionsbereich handelt, wird sich hier nicht viel ändern.
Zur Schulungsmatrix.
So sieht die logik aus
Team A Team B Team C Team D
Schulung 1 x x x
Schulung 2 x x x
Schulung 3 x x
Schulung 4 x x
Schulung 5 x x x x
Und daraus sollen Abfragen abgeleitet werden. Wieviele MA aus TeamA haben die Schulung xy.
Welche Schulungen fehlen welchen MA aus den jeweiligen Teams.
Hoffe es ist jetzt etwas verständlicher
Gruß
Hallo,
eine Matrix in dieser Form ist für eine Datenbank völlig ungeeignet.
Du benötigst die Zuordnung in Form einer fortlaufenden Tabelle.
Schulung Team
1 A
1 B
1 C
2 B
2 C
2 D
3 A
3 C
4 C
4 D
5 A
5 B
5 C
5 D
Nur bei einem solchen Aufbau der Tabelle lassen sich problemlos Deine gewünschten Abfragen ableiten.
Zu beachten wäre noch, dass sowohl für die Schulung als auch das Team dessen Schlüsselzahlen (die Primärschlüssel) als Fremdschlüssel gespeichert werden und nicht der Text.
Aus dem obigen neuen Tabellenaufbau ergibt sich auch, dass die Teamzusammenstellung in der weiter oben von mir vorgeschlagenen extra Tabelle für die Teamzusammenstellung. Nur dann kannst Du aus der Schulungstabelle (neue Struktur) die zum Team gehörenden Mitarbeiter auslesen und in den gewünschten Abfragen auswerten.
Die wirst nach meiner Auffassung um eine grundlegende Umstrukturierung (=Normalisierung) der DB nicht herumkommen.
Hallo
Ist die Anzahl Schulungen variabel oder gibt es nur 5? Meine Schulungen (Kurse) sind mit einem Beginndatum versehen, so kann ich z.B. abrufen, wer welche Kurse zwischen dem 01.01. - 31.05. besucht hat. Gelöst habe ich dies über eine "Kursbuchung", welche die ID_Kunden und ID_Kurs enthält. Die Teamzugehörigkeit muss aus meiner Sicht auf den Mitareiterdaten hinterlegt werden. Somit spielt es auch keine Rolle, falls später doch einmal die Teamzugehörigkeit geändert werden muss, da die bisherigen Kurse auf der ID_Mitarbeiter "gebucht" und reproduzierbar sind. Das schliesst aber eindeutig aus, dass wirklich einmal ein Mitarbeiter zwei Teams angehören kann (z.Bsp. als Stv oder Aushilfe).
Wenn es nur 5 Kurse sind und bleiben (was in der Praxis ja erfahrungsgemäss sehr schnell ändern kann) könnten die Infos auch direkt auf den MADaten hinterlegt werden, z.B.
Schulung 1 erfolgt j/n
Schulungsdatum 1
Schulung 2 erfolgt j/n
Schulungsdatum 2
etc
Für einen Profi nicht allzu sexy aber absolut praxistauglich bei kleineren Datenmengen.
Gruss
@Tally
So war auch mein Gedanke.
Die Anzahl Schulungen ist variabel und es sind auch mehr als nur 5 Schulungen. 30 bis 40 Schulungen ingesamt. Die Teamzugehörigkeit hab ich auch in der tblMADaten hinterlegt. Und über Abfragen regle ich dann welche Teams welche Schuhlungen brauchen? Wie sieht deine Lösung in Accees aus? Wie erstelle ich eine Kursbuchung? Meine Teamliste hat eine ID, meine Schulungsliste hat ein ID. Mitarbeiterlist hat ein ID. Alle mit Primärschlüssel versehen. Meine tblSchulungen sieht wie folgt aus: [ID] [Schulungsname] [Schulungsnummer] [Kosten].
Unsere Bildungsakademie ändert gerne mal die Namen der Schulungen, oder auch die Schulungsnummer. Inhalte und Zweck bleiben gleich. Gut wäre noch ein "Beschreibungdfeld".
Bin eher ungübt in Accees. Wäre über jede Hilfestellung, die zum erstellen der benötigten Tabellen, Abfragen und Formulare führt, sehr sehr dankbar.
Vielen Dank schon mal an euch beide.
Gruß
Bernhard
Hallo,
ZitatBin eher ungübt in Accees. Wäre über jede Hilfestellung, die zum erstellen der benötigten Tabellen, Abfragen und Formulare führt, sehr sehr dankbar.
und wo vermisst Du in meinen Antworten die Hilfestellung?
Ich habe eher den Eindruck, dass Du meine Hinweis ignorierst.
Access erfordert (wie jede Datenbank) einen normalisierten Aufbau der Tabellen. Alles andere rächt sich.
Ich würde in jedem Fall die Teamzusammenstellung in einer extra Tabelle erfassen und die "Schulungsmatrix" wie vorgeschlagen umzustrukturieren ist keine Option, sondern ein Muss.
Hallo
Ich würde es etwa so wie im Anhang lösen. Hinweis zu MzKIMu: nicht jedes nichtbeantworten kommt einem ignorien gleich, vielmehr ist der Denkprozess eines Access-Laien und das überblicken der Zusammenhänge nicht derselbe, wie der eines Access-Gurus und manchmal haben wir Laien halt etwas mehr Mühe, für Profis klar umschriebene Sachverhalte umzusetzen. Trotzdem sind Deine Erfahrungswerte natürlich Gold Wert, basieren sie ja vermutlich auch auf jahrelanger Erfahrung: also Danke für die Geduld mit Laien; Gruss René
Hallo,
meine Meinung zu der Teamzuordnung kennst Du, ich würde das wie gesagt mit einer extra Tabelle lösen und nicht als Fremdschlüssel in der Tabelle Mitarbeiter.
Wo ist jetzt in Deiner Übersicht die Tabelle mit der Schulungsmatrix geblieben, also die Zuordnung welches Team welche Schulung zu machen hat?
Zum jetzigen Zeitpunkt über Formulare nachzudenken ist überflüssig, erst muss das Datenmodell klar sein. Und um das Datenmodell macht man dann die Formulare.
Hallo ihr zwei,
sorry für die kurze Abwesenheit.
@MzKlMu: Es war nicht meine Absicht deine Infos zu ignorieren. Sollte das Gefühl bei Dir entstanden sein, bitte ich um Entschuldigung.
Wie gesagt: Bin für jede Hilfestellung dankbar.
Leider bin ich nun für drei Wochen away. Würde mich sehr freuen wenn ich nach meinem Urlaub wieder auf eure Unterstützung hoffen kann.
Ich wünsch euch ein gute Zeit.
Vielen Dank
Hallo zusammen,
ich hab eine ähnliche Thematik. Allerdings habe ich eine tbl_Personal, die die Zuordnung von Namen zu Bereichen enthält. Dann habe ich verschiedene Geräte, in einem Bereich mehr im anderen weniger.
Ich möchte hierzu ebenfalls eine Schulungsübersicht erhalten. Zunächst aber möchte ich in einem Dokument via Bericht die Aufstellung der Geräte eines Bereichs in den Spaltenüberschriften erhalten. Dazu benötige ich jedes Gerät natürlich nur einmal, egal wie häufig es in dem Bereich vorhanden ist.
Dann sollen in der Namensspalte all die Namen erscheinen, die dem ausgewählten Bereich zugeordnet werden.
In einer Kreuzabfrage wird das alles wunderbar dargestellt, doch wie bekomme ich da in den Bericht, da die Gerätebezeichnungen als Überschriften erscheinen. Das will ich ja auch im Bericht, damit ich zu jedem Namen dann später schriftlich das Datum der Schulung dokumentieren kann.
Meine Datenstruktur hat also die tbl_Personal, eine tbl_Bereich und eine tbl_Geräteübersicht, bei der die Geräte mit Seriennummer und Bereich alle aufgelistet sind.
Soweot ich verstanden habe benötige ich alle Daten in einer Tabelle oder Abfrage. Dabei hakt es, weil ich entweder jedes Gerät mit jedem Namen zugeordnet bekomme oder zwar die Namen nur einmal aber dann auch nur ein Gerät pro Bereich.
Wer hat da einen Ansatz zum weiterkomen für mich?
Grüße
Sven
Hallo,
es gibt da ein schönes Musterbeispiel ("CrosstabReport (http://www.rogersaccesslibrary.com/forum/crosstabreportmdb-intermediate_topic362_post362.html)") zu einem dynamischen Kreuztabellenbericht in Roger's Access Library.