Neuigkeiten:

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

Mobiles Hauptmenü

Projektdatenbank mit Stunden

Begonnen von ZickZack, September 26, 2011, 08:58:56

⏪ vorheriges - nächstes ⏩

ZickZack

Guten Morgen.

Ich überlege mir derzeit wie ich folgendes am besten mit Access erstelle:

Es geht z.B. um eine Projektdatenbank.

Wichtig: Ein Projekt ist immer einer Kategorie zugeordnet.

Ich möchte die Projekte eintragen und die dazugehörige Kategorie. Desweiteren will ich für jeden Mitarbeiter zu jedem Monat die Stunden eintragen die er an dem Projekt gearbeitet hat.

Soweit eigentlich kein Problem, ich hatte das mit einer Tabelle gelöst. Leider will es dann mit dem nächsten Vorhaben nicht klappen:

Ich möchte mir nun mit einer Ausgabe, anzeigen lassen, wie viel ALLE Mitarbeiter für eine Kategorie (die ja mehrere Projekte umfasst) gearbeitet haben.

Ich habe bisher versucht:

Spalten addieren. Leider funktioniert das bei mir nicht so wie ich es will. Wenn ich [Spalte1]+[Spalte2] addiere, setzt er nur die Werte nebeneinander. Also aus [15]+[24] wird = 1524.


Müsste ich vielleicht mit mehreren Tabellen arbeiten? Wenn ja, muss ich für jeden Mitarbeiter oder für jedes Projekt eine Tabelle anlege`?  Ich hoffe ihr habt meine Frage verstanden und könnt mir helfen.

MzKlMu

Hallo,
vermutlich hast Du für Spalte1 und 2 den Datentyp Text genommen. Hier ist Zahl (Double) erforderlich.

Bitte erkläre mal genauer, welche Tabellen Du hast.
Was ist eine Kategorie?

Du wirst mehrere Tabellen brauchen:

Mitarbeiter
Projekt
Kategorie
Zeiterfassung

Eher noch mehr.
Gruß Klaus

ZickZack

#2
Momentan versuche ich es mit einer Tabelle.
Sie sieht etwa so aus:


ProjektNrKategorieVerantwortlicherJan_Mitarbeiter1Feb_Mitarbeiter1Jan_Mitarbeiter2Feb_Mitarbeiter2
[/table]

Die Kategorie muss man als Filteroption verstehen. Ich möchte mir ja später anzeigen lassen, wie viele Stunden für eine Kategorie gearbeitet wurde.

Ich stelle mir vor, mit mehreren Tabellen wird die Dateneingabe und Ausgabe wohl einiges schwieriger.  :(

MzKlMu

#3
Hallo,
das geht nicht mit einer Tabelle, es sind mindestens die 4 Tabellen wie oben angesprochen erforderlich.
ZitatVerantwortlicher Jan_Mitarbeiter1 Feb_Mitarbeiter1 Jan_Mitarbeiter2 Feb_Mitarbeiter2
Das ist völlig daneben.
Die Stunden sind in einer extra Tabelle zu erfassen, mit einem Fremdschlüssel zum Projekt und einem Fremdschlüssel zum Mitarbeiter. Sowie je ein Feld für den Monat (mit Jahr !) und die Stunden. Jeder Eintrag gibt einen Datensatz.

Bitte erkläre mal die Kategorie genauer, wieso die Stunden je Kategorie und nicht je Projekt?
Gruß Klaus

ZickZack

#4
Die Stunden gehören schon zu den Projekten. Das stimmt. Allerdings ist jedes Projekt einer Kategorie zugeordnet.

Projekt A, Kategorie B
Projekt B, Kategorie B
Projekt C, Kategorie B
Projekt D, Kategorie C
Projekt E, Kategorie C

Ich möchte aber später abfragen: Zeige mir die Stunden von Kategorie C.
Das heisst also die Stunden von Projekt D und Projekt E zusammen, ist mein gesuchtes Ergebnis.
Hoffe es ist so verständlich.

edit:

Das mit dem addieren lag an dem Datentyp. Danke. Theoretisch habe ich nun dass was ich will. Allerdings ist es halt schon einfach aufgebaut.

MzKlMu

Hallo,
dann beschäftige Dich mit meinen Hinweisen. Mit einer Tabelle wird das nix. Da könntest Du das auch mit Excel machen.
Eine Tabelle ist noch keine Datenbank. Eine Datenbank besteht aus mehreren Tabellen die untereinander in Beziehung stehen.

Der User DF6GL (Franz) hier im Forum hat Links in seiner Signatur, mit denen Du Dich unbedingt beschäftigen solltest.
Gruß Klaus

ZickZack

Du hast recht. Bisher ist es auch in Excel vorhanden. Allerdings kann man mit Access Eingabemasken erstellen oder Ausgaben erstellen was es halt deutlich vereinfacht.

Wenn ich mit mehreren Tabellen und trotzdem nur einem Formular für die Dateneingabe arbeiten kann, versuche ich es gerne so. Das müsste einfach möglich sein.

MzKlMu

Hallo,
auch mit mehreren Tabellen wird die Datenerfassung in einem Formular möglich sein. Es wird allerding ein Hauptformular (Projekt) und darin ein Unterformular für die Erfassung der Zeiten notwendig sein.

Mit der Zuordnung der Kategorie gehe ich noch nicht einig. Welche Bedeutung hat denn die Kategorie?

PS:
Man kann keine Excel Anwendung nach Access umsetzen ohne die Tabellenstruktur zu ändern.
Access erfordert eine völlig andere Denkweise. Zwischen Access und Excel gibt es so gut wie keine Gemeinsamkeiten.
Gruß Klaus

ZickZack

Nehmen wir das Beispiel anhand einer Studiendatenbank., dann heisst es nicht Kategorie sondern Fachbereich

Studie A, Onkologie
Studie B, Onkologie
Studie C, Neurologie
Studie D, Onkologie
Studie E, Neurologie

Ich will wissen, wie viele Stunden wurden für die Onkologie gebraucht um dann z.B. eine Rechnung zu stellen. Oder wie meinst du Bedeutung?

Anderes Thema. Mitarbeiter.

Ich weiss nicht recht, was diese Tabelle für Felder haben soll. Für jeden Mitarbeiter eine? Oder etwa nur ein Feld?

Man muss beachten dass eine Studie/Projekt mehrere Mitarbeiter haben kann.

MzKlMu

Hallo,
kann eine Studie immer nur eine Kategorie haben, oder können das mehere Kategorien sein.
Also so:
Studie B, Onkologie
Studie B, Neurologie  ?

ZitatIch weiss nicht recht, was diese Tabelle für Felder haben soll. Für jeden Mitarbeiter eine? Oder etwa nur ein Feld?
Man muss beachten dass eine Studie/Projekt mehrere Mitarbeiter haben kann.
In die Mitarbeitertabelle kommen nur die reinen Daten des Mitarbeiters, sonst nichts. In eine Tabelle.
Weiterhin wird eine Zwischentabelle gebraucht, in der die Projekte einem Mitarbeiter zugeordnet werden. Das gibt eine n:m Beziehung zwischen Mitarbeiter und Projekt. In dieser Zwischentabelle wird aber nur der Primärschlüssel der Mitarbeitertabelle und der Projekttabelle als Fremdschlüssel gespeichert. Jede Zuordnung ist ein Datensatz.
Hat ein Projekt 5 Mitarbeiter gibt es in der Zwischentabelle 5 Datensätze.
Gruß Klaus

ZickZack

Eine Studie kann nur eine Kategorie haben.

MzKlMu

Hallo,
ZitatEine Studie kann nur eine Kategorie haben.
Dann habe ich meine Antwort nichts mehr hizuzufügen.
Baue die DB entsprechend auf.
Gruß Klaus

ZickZack

Jetzt wird mir vieles klarer. Vielen Dank für die Hilfe bisher. Diese  Seite http://www.php-kurs.com/datenstrukur-grafisch-darstellen-streifendiagramm.htm fand ich sehr hilfreich da die Beziehungen bildlich dargestellt werden.

Ich habe eine PDF angehängt die meine Beziehungen anzeigt. Ich wäre froh wenn jemand sagen kann, ob ich auf dem richtigen Weg bin  ;D

[Anhang gelöscht durch Administrator]

MzKlMu

#13
Hallo,
nein, das ist falsch und zwar drastisch.
Wiese setzt Du die Stunden-ID mit Studie in Beziehung? Ist aber egal, die Stundentabelle ist sowieso überflüssig, die Stunden kommen in die Tabelle Mitarbeiter_Studie.
Für die Beziehungen ist referentielle Integrität einzustellen.
Keine Nachschlagefelder in Tabellen verwenden (falls Du welche hast).
Wo sind denn die Kategorien geblieben, auch dazu wird eine Tabelle gebraucht.

Keine Sonderzeichen in Feldnamen ( + - etc), Name ist ein  reserviertes Wort und für eigene Namesvergaben tabu.
Gruß Klaus

ZickZack

Morgen

Die Tabelle Mitarbeiter_Studie ist eine Zwischentabelle, muss ich wirklich da die Stunden eintragen? Dachte die dient nur zur Zuweisung.
Nachschlagefelder verwende ich keine.