Datenbank zur Stundenerfassung



  • Hallo

    Hat schon einmal jemand so etwas geschrieben und kann mir den Sourcecode zur Verfuegung stellen?
    Welche Art von DB dahinterhaengt ist egal.



  • Vielleicht solltest du erstmal genauer beschreiben, was du überhaupt willst. Ansonsten wirst du hier vollständige Quelltexte wohl kaum bekommen.



  • Vielleicht war mein Beitrag ein wenig kurz.

    Ich habe folgendes Problem: Ich moechte fuer meine Firma ein Tool zur Stundenerfassung schreiben.

    -Man soll in jeden Tag im Jahr einsehen koennen.
    -Eintraege fuer einen Tag: gekommen, gegangen, stunden gesamt
    -Jeder Mitarbeiter hat das Tool um seine Daten dort einsehen zu koennen.
    -Bei einem Mitarbeiter kommen die Daten an zur Weiterverarbeitung

    Ich weiss aber nicht wo ich genau ansetzen soll.
    Ich suche Beispiele. Nicht unbedingt einen fertigen Sourcecode.



  • Fang doch einfach an zu programmieren. Und wenn du dann auf ein Problem stösst, fragst du einfach nach.



  • Darkfalcon schrieb:

    Ich weiss aber nicht wo ich genau ansetzen soll.
    Ich suche Beispiele. Nicht unbedingt einen fertigen Sourcecode.

    Beispiele wofür? Versuch doch mal das Problem in kleine Probleme zu zerhacken: Ist das Rechnen das Problem? Das Anzeigen? Sonst irgendwas? Überlege dir welche Teilaufgaben sich aus deinem Problem ergeben.

    Deine Frage wie sie im Moment da steht ähnelt der "Ich will nen Word Ersatz schreiben mit gleicher Funktionalität und weiss nicht wo ansetzen"-Fragestellung. Die bringt dich nicht wirklich weiter...

    -junix



  • Und noch ein toller Tip:
    Arbeite ein paar DB-Tutorials durch (siehe FAQ), das sollte dir einige Möglichkeiten aufzeigen und dich entsprechend inspirieren.

    Zusätzlich solltest du dich wahrscheinlich auch mal ganz allgemein mit dem Datenbank-Design bzw. -Entwurf beschäftigen, denn das reine Programmieren ist hier nur die halbe Miete (wenn überhaupt). Dazu findest du mit Sicherheit zig Seiten im Netz, denn das ist ja absolut nicht Borland- oder C++-spezifisch.



  • Hey,

    das wollte ich auch schon immer schreiben, aber habe leider nie die Zeit gefunden über ein kleines Zeiterfassungsprojekt würde ich mich tierisch freuen ;-).



  • Gib mir doch mal deine Mailadresse



  • Die Infos sind immer noch ein bißchen dürftig...

    Was soll das Ding denn alles können? Ist die Anbindung von Zeiterfassungsterminals vorgesehen? Sollen generische Schnittstellen für FiBu-Programme vorhanden sein? Sollen Berufsgenossenschaftsstunden berechnet werden können? Flexible Pausenzeitenberechnung? Mitarbeitergruppen? Schichtarbeit / Zuschläge? Überstundenregelungen? Das sind so die Standardfunktionen einer Zeiterfassungssoftware... Und ich glaub' nicht das Euch das jemand schenkt. 🙂

    Aber wenn Du / ihr den gewünschte Funktionsumfang mal postet, kann man euch vielleicht einen Einstiegspunkt geben.

    Für die Datenbankentwicklung kann ich nur schon mal generell den Tip geben: Laßt die Finger von der BDE! Die BDE ist tot. Und Paradox oder dBase sollte man auch nicht mehr einsetzen. Je nach Anzahl der Benutzer solltet Ihr euch mal Firebird oder die MSDE ansehen.

    Grüße Joe_M.


  • Mod

    Hallo

    ich wuerde eher mySQL vorschlagen
    oder ein eigenes Format ??

    MfG
    Klaus



  • Hi KlausB,

    auf die Gefahr hin, mich unbeliebt zu machen, mich noch vor der Registrierung unbeliebt zu machen... 🙂

    Also ich lese immer wieder von Problemen im Zusammenhang mit MySQL, die meist auf die Einschränkungen der kostenlosen Zugriffskomponenten zurückzuführen sind. Ergo muss man da etwas kaufen. Dann kann man aber gleich Firebird nehmen, und sich IBOjects zulegen.

    Oder aber eben die MSDE und ADO. Dort ist dann der Umstieg auf einen richtigen MS-SQL Server ohne Probleme möglich.

    MySQL kann nicht mit dem Leistungsumfang und Performance einer Firebird-DB oder eines MS-SQL Servers mithalten. Für die MSDE gilt das gleiche, bis zu einer bestimmten Anzahl von Benutzern, dann wird dort die Leistung - absichtlich - gedrosselt.



  • Aber für eine Stundenerfassung wird MySQL *locker* reichen. 🙂



  • So kompliziert soll es gar nicht werden.

    Die Daten:         1      2      3     4     5     6     7     8    ...  
          gekommen : 08:00   08:00
          gegangen : 17:00   17:00
          Stunden  :   8       8
          Ü-Stunden:   0       0
          Bemerkung:   x       x
    

    Fuer den ganzen Monat halt.

    Diese Daten sollen ueber Lan an einer zentralen Stelle gespeichert werden.
    Ausserdem sollen die Daten schon so vorbereitet sein das man sie hinterher mit Excel weiterverarbeiten kann.

    Edit:
    Zur Textformatierung einfach die Code-Tags benutzen.



  • tja, das sollte sich mit vertretbarem Aufwand realisieren lassen. Vielleicht der Hinweis: Macht euch von Anfang an darüber Gedanken, wie die Zugriffssteuerung geregelt wird. Jeder sollte nur seine eigenen Daten sehen dürfen. Und nur ein paar Leute sollten alle Daten sehen und vielleicht auch nur einer oder zwei von denen die Daten ändern dürfen. So etwas ist im Nachhinein schwer zu Implementieren.

    Postet wenn ihr spezifische Fragen habt.

    Joe_M.



  • Hallo,

    Ich schreibe schon seit einiger Zeit an einer Anwendung, die das oben genannte leisten soll und noch ein bisschen mehr. Ich kann dir nur den Tip geben das Projekt ordentlich zu planen wenn es was Gutes werden soll. Ich benutze auch als abstrakte Struktur einen mySQL-Server. Hab die Anwendung jedoch so entwickelt, dass ich recht einfach auf eine andere Struktur umstellen kann. Dafür muss ich nur eine Klasse anpassen. Ein gutes Usermanagement solltest du dir schon überlegen, um z.B. dirtyreads zu vermeiden; hilfe bietet da die neue mySQL-Version die vollständing transaktionsfähig ist. Die übernimmt dann auch das Locking, wenn sie entsprechend gehandhabt wird. Es kommt halt darauf an was du genau machen willst.

    Überleg dir sehr genau wie dein Rechtemodell aussieht. Wer darf auf was schreibend,lesend zugreifen !? Was ist mit backups? Import-Export-Funktion(Excel) , Wiederherstellung bei ausversehen gelöschten Daten? Caching der Sessions falls der Client abstürzt usw ?

    In einem Satz: Einfach drauf los programmieren wird dir da nicht helfen.

    Wenn du konkrete Fragen hast, kannst du ja noch mal posten.



  • Überleg dir sehr genau wie dein Rechtemodell aussieht. Wer darf auf was schreibend,lesend zugreifen !? Was ist mit backups? Import-Export-Funktion(Excel) , Wiederherstellung bei ausversehen gelöschten Daten? Caching der Sessions falls der Client abstürzt usw ?

    Und genau da ist das Problem.
    Wer was bekommen darf werde ich ueber den Filenamen realisieren.
    Backups wahrscheinlich auf dem lokalen Rechner.
    Import und Export von/nach Excel habe ich schon realisiert.
    Wiederherstellung ist nicht noetig.
    Auch ein abstuerzen ist nicht so schlimm da es sich nicht um Daten handelt die so sensitiv sind.

    Aber genau das sind die Probleme die ich habe.
    Das und das Design 🙂



  • Hallo,

    Dann fang doch mit dem Grundlegenen an. "Designe" die Datenbankstruktur. Leg die benötigten Tabellen an, definiere Relationen. Normalisiere die Datenbank wenn es nötig ist. Wenn du das gemacht hast, schreibst du die Klasse(n), die die Kommunikation mit der Datenbank übernehmen. Hast du die kannst du die Ansicht entwerfen und diese entsprechend auf Anwenderaktionen reagieren lassen.

    Ich denke im Zuge dieser Entwicklung werden dir konkrete Probleme und Fragestellugen auffallen, die du dann hier posten kannst.


Anmelden zum Antworten