Filou Geschrieben 9. August 2004 Geschrieben 9. August 2004 Hi! Ich möchte mal euere Meinung wissen. Ich soll ein Programm zur Arbeitszeiterfassung schreiben. Ich würde die Datenbank wie folgt aufbauen. Bin mir aber nicht sicher... [Personal] (PersonalNr.) KEY (Benutzername) (Passowort) (Vorname) (Nachname) [TestUser] (PersonalNr.) KEY (Kommt) TT:MM:JJJJ:STD:MIN:SEK (Geht) TT:MM:JJJJ:STD:MIN:SEK (Unterbrechnung) TT:MM:JJJJ:STD:MIN:SEK (Pause) TT:MM:JJJJ:STD:MIN:SEK Wie würdet Ihr es machen? LG, Filou Zitieren
JayN Geschrieben 10. August 2004 Geschrieben 10. August 2004 Also "Passowort" würde bei mir "Passwort" heißen... Ich würde mir außerdem noch überlegen, ob ich nicht das Datum und die Zeit bei "Kommt" und "Geht" nicht trennen würde. Eigentlich reicht nur ein Datum, oder? Oder arbeiten bei euch welche in der Nachtschicht? Man muss es halt abwägen... Mir ist noch nicht schlüssig, was Du unter "Unterbrechung" und "Pause" erfassen willst. Müßte bei Pause nicht ein Minutenwert reinkommen? Gruß JayN Zitieren
Filou Geschrieben 10. August 2004 Autor Geschrieben 10. August 2004 Uuups, vertippt Nur das Datum reicht nicht. Bei uns kann jeder kommen und gehen, wann er will. Man muss nur im Monat auf seine Zeit kommen. Deshalb brauch die Zeit. Ohne währe es witzlos. Und das Datum und die Zeit ist zusammen in einem Feld, weil ich das Programm mit C++ mache, das dann auf die Datenbank zugreift und da muss ich die Klasse COleDateTime verwenden. Ich habs mittlerweile ganz anders gemacht. Ich lege nicht für jeden Benutzer eine Tabelle an, sondern mache eine Tabelle "Zeiterfassung" in der alle Benutzer und alle Zeiten drin sind. Dann noch eine mit "Berechtigungen" und eine "Personal", in denen die allgemeinen sachen drin stehen. Zitieren
JayN Geschrieben 10. August 2004 Geschrieben 10. August 2004 Ups... ich meinte mit dem "es reicht nur ein Datum", dass man nicht für das Kommen und das Gehen nur ein Datum bräuchte... war etwas unverständlich. Es war nicht damit gemeint, dass die Zeit wegfallen sollte... Zitieren
SNOWMAN Geschrieben 12. August 2004 Geschrieben 12. August 2004 Unter dem Punkt der ... etz hab ich vergessen wies heist, aber : Die Personaltabelle würde ich spalten: [uSERS] (ID) KEY (Username) (Password) [uSERS_real] (ID) KEY (Name) (Vorname) [uSERS_anschrift] (ID) KEY (Stadt) (PLZ) (Land) (und so weiter) so kannst du ggf. auf Bereits bestehende Mitarbeitertabellen zugreifen, welche von z.B. der Personalabteilung verwaltet werden. So gibts bei euch nur eine einzige Tabelle mit den Namen der Mitarbeiter usw., nicht das es da zu redundanzen kommen kann Zitieren
Antibiotik Geschrieben 12. August 2004 Geschrieben 12. August 2004 Hallo, Wenn im Feld Pause das Datum verwendest, dann solltest du es trennen zwischen Pause beginnt, Pause endet. Ich würde Allerdings nur die Zeit reinschreiben z.B. 30 min. evtl. noch die unterteilung in abteilungen? Das Wort Zeiterfassung kommt mir sehr bekannt vor Ciao Antibiotik Zitieren
SNOWMAN Geschrieben 13. August 2004 Geschrieben 13. August 2004 Ach, es heist Normalisierung! Des Gschmarri mit 1. 2. und 3. Normalform, des meinte ich, hatte nur grad vergessen wies heist, habs aus meine gedanken verdrengt Na, Normalisierung is schon nützlich aber auch kompliziert, vor allem die zweite: Sind in einer Relation Attribute, welche nur von einem Teil des Primärschlüssels abhängig sind, so muss dieses Attribut in eine neue Relation, in welcher dieses Attribut mit dem zugehörigen Primärschlüssel steht. Also sind die Primärschlüssel Personennummer und ISBN-Nummer, die weiteren Attribute Name und Buchtitel, dann muss der Name mit der Personennummer in eine neue Relation. Aus der ersten Relation muss dann noch der Name raus, Personennummer bleibt aber da. Zitieren
Filou Geschrieben 13. August 2004 Autor Geschrieben 13. August 2004 Ach, es heist Normalisierung! Des Gschmarri mit 1. 2. und 3. Normalform, des meinte ich, hatte nur grad vergessen wies heist, habs aus meine gedanken verdrengt Na, Normalisierung is schon nützlich aber auch kompliziert, vor allem die zweite: Ja, das weiß ich Danke! Meine Stechuhr - Programm ist nur ein kleiner Teil eines Personalverwaltungsprogramms, dass ich im anschluss programmieren muss. Da werden dann alle Daten über den Mitarbeiter gespeichert. Mir gings hier hautsächlich um die Zeiterfassung. Hallo, Wenn im Feld Pause das Datum verwendest, dann solltest du es trennen zwischen Pause beginnt, Pause endet. Ich würde Allerdings nur die Zeit reinschreiben z.B. 30 min. evtl. noch die unterteilung in abteilungen? Antibiotik Ich dachte, das Feld Pause enthält nur die Dauer der Pause. Also 30 Min oder 45 Min. Wann die Pause gemacht worden ist, ist doch egal, oder? Das Wort Zeiterfassung kommt mir sehr bekannt vor Was willst Du mir damit sagen???? Zitieren
SNOWMAN Geschrieben 13. August 2004 Geschrieben 13. August 2004 Mit "zeiterfassung kommt mir bekannt vor" meinte er vllt. das ich gesat hab, ich hab vergessen wies heist Wegen der Pausenlänge ... es kommt halt drauf an wie genau die werte sien sollen, wenn man aber mehr über seine Angestellten erfahren will dann würd ich den anfang das Ende und die Dauer aufnehmen also wenns echt nur um die länge geht dann würd zwei tabellen nehmen: [pause_temp] (Mitarbeiter ID) (Anfangszeit) [pausenzeit] (date() - pause_temp.Anfangszeit) - where id = id blah blah blah -> funktion: löche den eintrag mit ID xyz aus der temp tabelle Wenn ich das mal wieder etwas verwirrt geschreiben haben sollte, einfach sagen, dann glieder ich des n bisserl und schreibs ausführlicher genauer usw Zitieren
Antibiotik Geschrieben 13. August 2004 Geschrieben 13. August 2004 morgen, Was willst Du mir damit sagen???? ich hab auch eine zeiterfassung entwickelt, betreut die zur zeit und werde sie komplett neu programmieren. Ciao Antibiotik Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.