Zum Inhalt springen

Personaldatenbank


the new technican

Empfohlene Beiträge

Hallihallo...

Ich stehe hier vor einem kleinen Disaster, also werde ich es mal erläutern:

Ich arbeite in einem Versorgungsunternehmen (ca. 350 Angestellte/Arbeiter) und soll nun für die Personalabteilung eine Datenbank erstellen die alles erfasst. Z.B.: (Zum Hinweis - die Arbeiten da noch mit Kartein)

-Wann hat wer Urlaub

-Familienstand, Kinder Name Frau....

-übliche Personalien

-Jubilen (25 Jahre im Betrieb oder so)

-Gehaltsgruppen, Verdienst

-Arbeitsunfähigkeiten

-und was weiß ich noch was alles mit rein soll....

Aber nun zu meinem kl. Disaster: Ich habe noch nie etwas mit Access gemacht und zu allem Überfluss soll man da auch noch rechte für die einzelnen Benutzer vergeben können.

Ich hab mir jetzt schon ein Buch über Access geschnappt und mach das zur zeit durch - meine erste Frage ist jetzt nur: ich muss mich mit der Personalabteilung mal treffen. Und zwar will ich da erfragen was sie alles genau habe wollen (welche Felder). Nun da das aber auch erst in vielleicht 4 Wochen sein wird (hab noch BS) wollte ich euch doch mal fragen was habt ihr denn so für Ideen und Vorschläge für mich??? Es würde mir bestimmt helfen wenn ich wüsste was ich alles sonst noch fragen könnte.... Programmtechnische Probleme dann in 4 Wochen ;););)

-thx-

Link zu diesem Kommentar
Auf anderen Seiten teilen

mhm, ich empfehle eine kallender tabelle ... dort kannst du die urlaube der mitarbeiter dann eintragen. jubilaeen etc. kann man durch das programm errechnen lassen, da brauchst kein extra feld zu...

dann eben saemtliche daten ueber den mitarbeiter in einer tabelle (name, vorname, gebdat, eintrittsdat etc.)

allerdings wirst nur mit access nich weit kommen... ich denke, vb waere angebracht zu verwenden...

das ganze liese sich natuerlich auch kostenguenstiger auf mysql/php ebene loesen... ;)

greetz

Link zu diesem Kommentar
Auf anderen Seiten teilen

personaldatenbank? mhhh. ist ja ganz schön mächtig. also mit access wirst du mit sicherheit nicht weit kommen. wichtig für die besprechung wird für dich sein: die personalabteilung muss mit dir ein pflichtenheft erarbeiten. bestehe darauf, dann können sie hinterher nicht sagen: dafehlt was oder so haben wir uns das nicht vorgestellt. dazu kommt, dass nicht jeder einblick in die personaldaten erhalten darf. es geht um ja personenbezogene daten. da spielt der datenschutz ne grosse rolle. zwar darf die tippse zwar wissen wer in der firma arbeit, aber nicht wieviel er verdient oder ob er schon eine abmahnung bekommen hat. (ein kunde von mir geht z.b. so weit, dass das netzwerk der pesonalabteilung gar nicht mit dem rest der firma verbunden ist. aus datenschutzgründen.) das sind alles punkte die du in die besprechung mit einbringen solltest. versuch doch einfach die leute im gespräch so zu leiten, dass sie am ende eine kommerzielle lösung vorziehen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eigne Dir vor dem Arbeiten mit einem Datenbanksystem die Datenbankgrundlagen an.

Such mal nach Normalformen, Primaerschluessel, Fremdschluessel, referenzielle Integritaet, Sperrmechanismen beim Mehrbenutzerbetrieb und Zuweisen/Entfernen von Rechten mit SQL.

Dann sind eventuell spaetere Aenderungen wie z.B. die Portierbarkeit zu einem anderen Datenbanksystem oder Einfuegen/Entfernen von Feldern wesentlich leichter zu vollziehen.

siehe http://www.echtermann-online.de/computer/access/datenbankdesign.htm

siehe http://www.iud.fh-darmstadt.de/methodik/publ/skript/db96/rdbenfl5.htm

siehe http://v.hdm-stuttgart.de/~riekert/lehre/db/sld001.htm

siehe http://fachinformatiker-world.de/forums/showthread.php?s=&threadid=8454

Link zu diesem Kommentar
Auf anderen Seiten teilen

Danke erst mal:

Also das ich mir mal so ein ganzen Datenblatt mit Max Mustermann ausfüllen lasse kam mir auch schon in den Sinn. Aber wieso soll den Access nicht das richtige sein??? Wie sollte ich den sonst 350 Mitarbeiter verwalten - etwa in Excel. Gut PHP kenn ich nicht muss ich gestehn - ist aber soweit ich weiß eine Progie-sprache. MySQL sagt mir ehrlich gesagt mal gar nix außer das ich eben weiß das das auch mit DB's zu tun hat.

Aber ich hab das wohl auch etwas zu oberflächlich beschrieben:

Ein BSP: Bis jetzt arbeiten die da noch mit einer Kartei auf der 366 Felder sind und da ist ein "X" für Feiertage/WE's, "U" für Urlaub, "K" für Krank, "S" für Sonderurlaub und noch paar andere, Das soll man auch wieder haben oder zumindest etwas gleichgut übersichtliches. Vielleicht dachte ich mir, kann man ja in ACCESS eingeben das der von 5.4.02-10.4.02 Urlaub hat und dann wenn ich wohin klick das mir dann Access ne (Excel)Tabelle erstellt die so aussieht wie diese jetzt und die man dann ausdrucken kann.

Hab mir auch schon ein Buch über Access geschnappt und mach des zu Zeit durch.

Des mit dem Datenschutz ist auch so ne Sache!!! Ich weiß schon aber da das bis jetzt auch von der Abteilung bearbeitet werden muss wird das dann wohl auch einer von denen eingeben müssen. Denn die können ja jetzt auch nicht auf die Kartein schreibe: "Ach der bekommt 1000,-€, Gehaltsklasse V hört sich doch gut an oder". Natrürlich will ich da auch Benutzer und auch zu diesen Benutzern bestimmte Rechte vergeben. Den so soll zum Beispiel nur mal der admin (vielleicht/hoffentlich ich) nur Datensätze löschen dürfen. Es werden auch nur 2 Personen sein die Daten eingeben und dann noch ev. 3 weitere die diese nur lesen (der eine zum Bsp. macht das Zeug da mit den Jubilen oder so - kenn des auch net so genau)....

Bin für jeden Vorschlag dankbar!!!!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin!

Erster Vorschlag: vergiss Access. Es ist zwar echt easy im Aufbau mit den ganzen Assistenten und Oberflächendesignern...

...aber...

...der Nachteil ist, dass es immer noch eine Desktopdatenbank ist. Das heisst, das Ding liegt bei einem Anwender rum und kann nur auf einem Rechner bearbeitet werden - viel Spass dann, wenn mehrere Leute darauf zugreifen sollen.

Ausserdem weiss ich nicht so ganz, ob das mit den Benutzerrechten da wirklich so funktioniert, wie sie sich das vorstellen.

Da ist der Vorschlag MySQL besser. Das gibt es, wie schon erwähnt kostenlos (das Argument fällt also schon mal weg ;) ).

Dann mal als Frage: mit was für einer Programmiersprache arbeitet ihr denn im Betrieb? Damit müsste es sicher auch lösbar sein (wenn Du auch vielleicht noch nicht weisst, wie).

Zu Datenbank selbst: Unterteil das grob in 4 Tabellen (bitte nicht meckern, ich weiss, das hat mit Normalform und so nix zu tun ;) ):

1) Die Rechtetabelle für die User (wer darf was?)

2) Die "öffentlichen" Mitarbeiterdaten (Name, Einstellungsdatum, Geburtstag, usw.)

3) Die "nicht-öffentlichen" Daten (Gehaltsstufe, Akteneinträge, usw.)

4) Kalenderdaten (Urlaubszeiten, Krankheitstage, usw.)

Kleiner Hinweis zu 4) : mach da um Himmels Willen keine Tabelle mit mehr als 366 Spalten auf!!! Das ist, alleine schon vom Speicher her, absoluter Wahnsinn...

Es reichen eigentlich schon 5 Felder:

a) Satz-Nummer (damit der Eintrag eindeutig identifiziert ist)

B) Mitarbeiternummer

c) Ein Feld für das was (Urlaub? Krankheit?)

d) Von - Datum

e) Bis - Datum

Ein Urlaubseintrag würde dann so aussehen (die einzelnen Feldeinträge durch ";" getrennt):

4423 ; 3462 ; 'U' ; 12.05.2002 ; 17.05.2002

Ein Krankheitseintrag wiefolgt:

4473 ; 4252 ; 'K' ; 02.02.2002 ; 03.02.2002

Ich hoffe, ich konnte Dir damit ein wenig weiter helfen... ansonsten: frag weiter. :OD

Gruss,

der Onkel der die Zellulose nicht im Hirn hat

PS: Wenn man es übertreiben will, macht man eine 5. Tabelle auf, die aussieht wie die 4., nur dass man an Stelle von Datum Datumzeitfelder nimmt. Damit können dann die Arbeitszeiten der Mitarbeiter festgehalten werden. Als Hinweis: damit kannst Du Dich auch sehr unbeliebt machen :D

Link zu diesem Kommentar
Auf anderen Seiten teilen

WOW - danke für den riesen Beitrag!!!!!!!!!!!

Also fangen wir doch mal oben an:

Das das nur ein User nutzen kann ist falsche => SQL-Server. Ich weiß zwar nicht wie das genau funzt aber im mom stell ich mir das wie ein Terminalserver vor und der Benutzer (einer der 5) ruft einen Datensatz auf bekommt den aus dem RZ, bearteitet ihn und das ganze wird wieder gespeicher - keine lokale Kopie oder sonstiges. Zu dem das man das in "unserer progiesprache machen könne" sei gesagt das ich FiSi lerne und in meinem Betrieb auser mal ne Batchrutine nix geprogt wird!!!!

Aber wieso rät mir denn jeder von Access ab - ich weiß ich hab nicht viel Erfahrung aber ich lern es grad und bis jetzt hatte ich noch keine Probleme!!! Aber wäre dankbar wenn du mir ein e-book zu mySQL geben könntest oder du mir zumindest mal den Unterschied zu dem normalen Access erklärst!!!!

PS: Danke für die Tabelln aber das wird alles noch sehr viell komplexer!!!!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von the new technican

Aber wieso rät mir denn jeder von Access ab - ich weiß ich hab nicht viel Erfahrung aber ich lern es grad und bis jetzt hatte ich noch keine Probleme!!!

Wie Holzonkel oben schon gesagt hat, ist Access mehr oder weniger eine Desktop-Datenbank. Solange du als einzigster Benutzer drauf bist, klappt das wunderbar, aber sobald mehrere Benutzer auf Access zugreifen bekommst du Probleme. Du kannst ja mal probieren, eine Access-Db auf den Server legen und von mehreren Rechnern gleichzeitig darauf zugreifen.... Du wirst dann dauernd Meldungen bekommen, z.B. das Datensätze gesperrt sind weil gerade jemand anderst drauf zugreift...

Was allerdings wunderbar klappt, wenn du Access nur als Frontend nimmst, d.H. du du hast dann nur die Formulare und Berichte im Access und die Tabellen liegen auf einem "richtigen" Datenbankserver, wie z.B. MySQL. Du gibst dann jedem User die Accessdb mit den Formularen und Berichten Lokal auf den Rechner und verknüpfst die Tabellen per ODBC.

Original geschrieben von the new technican

Aber wäre dankbar wenn du mir ein e-book zu mySQL geben könntest oder du mir zumindest mal den Unterschied zu dem normalen Access erklärst!!!!

Schau mal hier rein:

http://www.mysql.org/documentation/index.html

http://ffm.junetz.de/members/reeg/DSP/ (ist zwar für MySQL mit PHP hat aber auch einen eigenen MySQL-Teil)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von the new technican

ist das eigentlich ne Programmiersprache oder wie muss ich mir das vorstellen.

Nö, das ist einfach nur ne Datenbank. Du greifst darauf per SQL zu. Es gibt aber auch Tools, wie z.B. MyPhpAdmin mit denen du dir die Tabellen "zusammenklicken" kannst.

Die eigentliche Programmierung der Anwendung, machst du ganz normal in der Programmiersprache die du dir aussuchst.

Unter Access hast du bei der Programmierung (fast) keinen Unterschied, ob du die Tabellen direkt in der Accessdatenbank hast oder ob du auf MySQL-Verknüpfte Tabellen hast. Du kannst ganz normal per Abfragen, Recordsets oder direkt per SQL (mit docmd.runsql) auf die Tabellen zugreifen.

Du mußt allerdings auf die Besonderheiten von MySQL achten, z.B. unterstützt MySQL keine Primärschlüssel über mehrere Felder...

Link zu diesem Kommentar
Auf anderen Seiten teilen

mmmmhhhh

und wie kann ich nun zu einer mySQL - Tabelle kommen. Womit wird denn das programmiert oder zusammen geklickt.

Ich weiß ich stell mich weng an aber ich hab noch nie was mit Datenbanken zu tun gehabt!!! Und sind das echt so viele Fehlermeldungen die man bekommt wenn man das ganze in Access macht??? Was kann den da zum Bsp auftreten???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von the new technican

Zu dem das man das in "unserer progiesprache machen könne" sei gesagt das ich FiSi lerne und in meinem Betrieb auser mal ne Batchrutine nix geprogt wird!!!!

< - L E S E N - >

Aber ich lern zur Zeit C++ in der Schule aber da ich erst im 1. AJ bin wird mir das nicht viel helfen. Ich sag ja auch nicht das ich nicht von Access weichen will. Bin offen für neue Dinge nur will ich eben zuvor wissen auf was ich mich denn da einlasse. Und was sind das denn jetzt für ev. Fehlermeldungen die da auftauchen können wenn ich meine DB nur mit Access mache???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von the new technican

Und was sind das denn jetzt für ev. Fehlermeldungen die da auftauchen können wenn ich meine DB nur mit Access mache???

Access sperrt Datensätze, die von einem anderem Benutzer geöffnet sind. Angenommen jemand schaut sich die Lohndaten von Lieschen Müller an und jemand anderst will einen Fehltag für Lieschen Müller eingeben, bekommt derjenige der den Fehltag eingeben will die Meldung, das jemand anderst gerade die Daten offen hat und deswegen nichts geändert werden kann. Das passiert (je nach Abfrage) auch wenn an der eigentlichen Mitarbeitertabelle nichts geändert wird.....

Dann brauchst du nur noch so Schnarchnasen haben, wo sich einen Datensatz anschauen und dann Access offen stehenlassen obwohl sie es eigentlich nicht mehr brauchen.

Also glücklich wirst du damit mit mehreren Usern bestimmt nicht...

Link zu diesem Kommentar
Auf anderen Seiten teilen

Und wenn ich das dann recht verstanden habe kann MySQL wohl den selben Datensatz mehrmal öffnen oder wie???

Frage: Angenommen ein Mitarbeiter hat später mal 3 Tabellen (1 Personalien, einer Urlaub/krank, eine Zusätzliches) ist dann der ganze Mitarbeiter gesperrt oder nur die entsprechende Tabelle die gerade bearbeitet wird/ geöffnet ist?

Und kann mir jetzt bitte mal einer sagen was MySQL für ein Programm ist??? oder in welcher Sprache man das Programmiern kann??? Oder steh ich heute auf der Leitung???? :confused:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von the new technican

Frage: Angenommen ein Mitarbeiter hat später mal 3 Tabellen (1 Personalien, einer Urlaub/krank, eine Zusätzliches) ist dann der ganze Mitarbeiter gesperrt oder nur die entsprechende Tabelle die gerade bearbeitet wird/ geöffnet ist?

Die Tabellen die geöffnet sind. Da du aber eigentlich immer den Namen aus der Personalien-Tabelle brauchst ist diese auch gesperrt....

Original geschrieben von the new technican

Und kann mir jetzt bitte mal einer sagen was MySQL für ein Programm ist??? oder in welcher Sprache man das Programmiern kann??? Oder steh ich heute auf der Leitung????

Ich glaube du stehst auf der Leitung... ;) Steht doch alles oben schon.... Mysql ist ne Datenbank und angesprochen wird die über SQL. Runterladen kannst du die unter www.mysql.org Alles zur Installation, Konfiguration und auch zu SQL steht in den 2 Links die ich weiter oben gepostet hatte....

Link zu diesem Kommentar
Auf anderen Seiten teilen

schwierig schwierig schwierig....

Also ich glaub ich kämpf mich jetzt erst mal durch mein Access bcuh das ich schon mal die Grundlage einer datenbank hab. Dann werd ich mir mal die Frage stellen wo ich des alles Programmiere... Vielleicht lad ich mir heute Abend mal noch des MySQL runter aber SQL ist doch ein Programmiersprache oder :D:D :confused:

Link zu diesem Kommentar
Auf anderen Seiten teilen

...*klick*

Moment mal... wenn Du FiSi bist, warum zum Geier sollst Du dann sowas programmieren???

Egal... aber ich würde mir an deiner Stelle nicht für sowas am Anfang gleich C++ antun - nimm lieber Visual Basic, lernt sich leichter und dafür reicht es alle mal... ;)

Gruss,

der Onkel

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

bei deiner Aufgabenstellung fällt mir der Spruch: "Warum das Rad mehrmals erfinden" ein.

Eure Situation gab es vor ein paar Jahren, (Jahrzehnten) in jedem Unternehmen. Mittlerweile haben ca. 98% eine EDV mit einem Personalverwaltungsprogramm.

So etwas vernünftig neu zu erstellen, dauert ein paar Mannjahre.

Ich würde vorschlagen, du informierst dich über die verfügbaren Produkte in diesem Bereich, vergleichst sie mit euren Anforderungen, erarbeitest eine Kostenaufstellung und präsentierst das dann deinem Chef.

Wenn du natürlich nur eine elektronische Umsetzung des Karteisystems erstellen sollst, ist es egal ob du Access oder irgendeine andere Plattform nimmst. Allerdings zweifle ich den Nutzen an und denke nicht, dass das dann nachher im Betrieb eingesetzt wird.

Gruß Jaraz

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...