Eigene Website für Schichtpläne mit Mitarbeiter-Login und Anzeige von Exceltabellen

Mahonyreal

Cadet 3rd Year
Registriert
Juli 2018
Beiträge
36
Sehr geehrtes CB Forum,

ich verwalte einen Schichtplan. (sehr simple gehalten via Excel mit bedingten Formatierungen etc.)
Vor Kurzem habe ich aufgrund der Nachfrage die Datei so bearbeitet, dass es je zwei Grundschichtpläne gibt (Woche 1 und Woche 2) in denen die gesamte Besetzung angezeigt wird. Zudem gibt es für jeden Mitarbeiter ein individuelles Tabellenblatt mit deren Schichtplan.
Bisher muss jeder Mitarbeiter ein Foto vom Plan machen bzw. bekommt auf Anfrage eins von uns.
Wenn wir aber viel zu tun haben oder es zu Uhrzeiten abgerufen werden soll, in denen keiner erreichbar ist wird es natürlich schwierig.
Um das etwas zu vereinfachen, möchten wir das gerne Online abrufbar machen.

Dies soll relativ simple gehalten werden.
Folgendes möchte ich demnach gern realisieren:
  • Jeder Mitarbeiter soll sein Tabellenblatt (seine Schicht) online abrufen können.
  • Dafür soll jeder einen Login & ein Passwort erhalten.
  • Die Schichtpläne sollen sich "auf Knopfdruck" aktualisieren lassen, sobald etwas in der Datei geändert wurde. (z.B. eine Schicht)
  • Die Exceldatei soll dann als "Datenbank" dienen (Änderungen passieren dann nur innerhalb der Exceltabellen)
  • Es soll etwa 20 Mitarbeiter umfassen
Simple gehalten: Jeweiliger Mitarbeiter loggt sich mit seinen Daten ein, bekommt nur seinen Schichtplan angezeigt - fertig.

Da ich noch absoluter Anfänger in diesem Bereich bin möchte ich gerne ein paar Informationen zum Start sammeln.
  • Ist das für einen Anfänger realisierbar?
  • Welche Programme/Tools würdet ihr empfehlen?
  • Muss ich auf etwas Bestimmtes/Wichtiges achten?
  • Könnten eventuell Kosten entstehen, falls ja in welchen Höhen?
Ich habe mich auch schon nach ein paar Online-Tools umgeschaut, jedoch sind die angebotenen Preise uns dann doch zu hoch, da auch viel zu viele Funktionen angeboten werden die wir nicht benötigen.

In die empfohlenen Programme etc. kann ich mich im Nachhinein reinlesen.

Anbei habe ich einmal eine simple Version der Datei geheftet.
Die Tabellenblätter: Unten 1.Wo, Unten 2.Wo, Oben 1.Wo & Oben 2.Wo sind die Grundschichtpläne von denen alles ausgeht.
Die Tabellenblätter: Martin & Steffi sind die individuellen Mitarbeiterschichtpläne, welche nur eigene Schichten anzeigen. (die dann online abrufbar sein sollen)
(Das Datenblatt kann ignoriert werden, dient nur als Ausgangspunkt für die bedingten Formatierungen)

Mein Excelprogramm:
Programm: Microsoft Office 2021 Professional Plus

Wie immer
Vielen Dank im Voraus,
Mit freundlichen Grüßen
Mahony
 

Anhänge

  • Beispiel Dienstplan CB Forum.xlsx
    115,3 KB · Aufrufe: 88
teamcal pro oder der nachfolger neo
 
Seid ihr denn bereits zu M365 migriert? Dann könntet ihr dass entweder über SharePoint Online oder per PowerApp erledigen. Sollte auch in der "kleinen" Business-Lizenz beinhaltet sein.

Micke schrieb:
Und dann fröhlich dabei zuschauen, wie der Betriebsrat das um die Ohren hat?
 
  • Gefällt mir
Reaktionen: Gizzmow und TomH22
Datenschutz? Compliance? Google Sheets ist außerhalb des Google Workplace Abos jetzt nicht gerade das Gelbe vom Ei, was das anbelangt
 
was ist das schützenswerte an nem schichtplan?
 
Schon der Name des Mitarbeiters ist GDPR relevant…
 
  • Gefällt mir
Reaktionen: Gizzmow und tomgit
demzufolge dürfte niemand wissen, wer in einer abteilung, außerhalb der eigenen, arbeitet, weil dann kennt man ja den namen von personen.

kinder, lieber mal bisschen den hausverstand verwenden, als stur jedem blödsinn zu folgen.
 
Wenn ich nichts übersehen habe, würde das eine Nextcloud mit OnlyOffice oder Collabora abdecken, dazu kommt ein gutes Userbackend und wenig gefrickel, selbsthosten kann man das alles dazu auch noch.
 
WhyNotZoidberg? schrieb:
demzufolge dürfte niemand wissen, wer in einer abteilung, außerhalb der eigenen, arbeitet, weil dann kennt man ja den namen von personen.
Darum ist es bei den allermeisten Firmen auch Gang und Gebe, dass man entweder direkt zustimmt, bei Events oder Ähnlichen genannt zu werden, oder man darf explizit etwas unterzeichnen.

WhyNotZoidberg? schrieb:
kinder, lieber mal bisschen den hausverstand verwenden, als stur jedem blödsinn zu folgen.
Auch wenn es vielleicht "Blödsinn" sein mag, ist es trotzdem mit Gesetzen verbunden und kann Strafen mit sich ziehen.
 
  • Gefällt mir
Reaktionen: Oelepoeto und Gizzmow
tomgit schrieb:
Darum ist es bei den allermeisten Firmen auch Gang und Gebe, dass man entweder direkt zustimmt, bei Events oder Ähnlichen genannt zu werden, oder man darf explizit etwas unterzeichnen.
wir reden von einem schichtplan.
sag bloß, du kennst niemanden aus deiner firma, der nicht in der selben abteilung arbeitet. oder haben die zugestimmt, dass du ihre namen kennst?
 
WhyNotZoidberg? schrieb:
wir reden von einem schichtplan.
Wir reden hier von einem Schichtplan, der ins Internet gestellt werden soll, und das anhand einer Plattform, welche Opt-In-Security für das Sharen bietet.
Weißt du, welche Informationen du allein aus Identität und Schichtplan ziehen kannst?

Außerdem ist es unnötig darüber zu diskutieren, wenn es dem Datenschutz widerspricht. Wenn du meinst, dich in deinem Betrieb übers Gesetz stellen zu können, dann ist das dein Bier.

Und bevor du weiter diskutieren magst, dann diskutiere mit dem Artikel vom TÜV Süd: https://datenschutz-fachportal.tuvsud.com/artikel/datenschutz-dienstplan-schichtplan.html

Wenn die Umgebung ausreichend abgesichert ist - was ich bei einer privaten Google Cloud Umgebung einfach nicht als gegeben sehe - kann man es ins Netz stellen. Aber warum sich mit einer unnötigen komplexen Umgebung befassen, wenn man es vielleicht bereits über die M365 Umgebung durch integrierte Applikationen, wie etwa MS Teams, abdecken kann?
 
  • Gefällt mir
Reaktionen: Gizzmow, sh., Teeschlürfer und 3 andere
WhyNotZoidberg? schrieb:
demzufolge dürfte niemand wissen, wer in einer abteilung, außerhalb der eigenen, arbeitet, weil dann kennt man ja den namen von personen.
Wenn es um Datenverarbeitung geht, im Grunde genommen ja.
Personenbezogene Daten darf man nur verarbeiten, wenn es für einen bestimmten Zweck erforderlich ist. Und Zugriff auf diese Daten dürfen auch nur Personen haben, die sie benötigen. Die Personalabteilung darf natürlich so etwas wie Kontonummer, Gehalt, Steuerklasse, usw. wissen.
Aber nicht jeder Mitarbeiter der Firma sollte auf diese Daten Zugriff haben.

Einen Schichtplan müssen natürlich auch etliche Personen im Unternehmen kennen. Aber eben nicht z.B. Leute außerhalb des Unternehmens.

Gibt man Daten zur Verarbeitung an externe Dienstleister (z.B. Google wenn man Google Docs verwendet) muss man mit diesem Dienstleister ein "Data processing agreement" abgeschlossen haben, in der z.B. geregelt wird, was der Auftragnehmer (also Google in diesem Fall) mit den Daten machen darf oder eben nicht. usw.

Ob Du das für "Blödsinn" hältst oder nicht, ist irrelevant. Der Gesetzgeber hält es nicht für Blödsinn, und kann für Verstöße gegen DSGVO/GDPR empfindliche Bußgelder verhängen.


Mahonyreal schrieb:
Ist das für einen Anfänger realisierbar?

Was soll man darauf antworten? Die Art Deiner Fragen lässt darauf schließen, dass Du wenig bis keine IT und Programmiererfahrung hast. Jeder hat mal als Anfänger angefangen, insofern mit genügend Einsatz und Geduld kann jeder Anfänger zum Experten werden. Ob dieses Projekt, gerade wegen des sensiblen Themas "Personenbezogene Daten mit Zugriff aus dem Internet im geschäftlichen Umfeld", eine gute Idee als Anfängerprojekt ist, ist dann eine ganz andere Frage.

Gehen wir mal Top-Down an die Sache:

Egal wie man so eine Web-Anwendung technisch realisiert: Jede Webanwendung muss auf einem Webserver laufen, auf den man zugreift.

  • Webserver läuft auf einem (Server)-Computer des Unternehmens, der dazu über das Internet erreichbar gemacht wird. Das geschieht über entsprechende Regeln in der Firewall des Unternehmens (ein Firewall gibt es heutzutage immer, im Zweifelsfall ist in eurem Router integriert). Den Server muss man betreuen, gegen Datenverlust sichern, gegen Einbruch von Hackern, etc. absichern. Das professionell zu machen ist recht aufwändig und erfordert Erfahrung. Habt Ihr eine IT Abteilung im Unternehmen die sowas macht, oder bist Du die IT Abteilung

  • Webserver läuft in der Cloud. Hier müsste ich jetzt eigentlich einen riesigen Haufen von Untervarianten aufzählen. Das reicht von einfachen Webhosting Diensten, über virtuelle Maschinen, Serverless Computing Ansätze bis hin zu "fully managed" Anwendungen. Letzteres wäre z.B. bei den hier genannten Lösungen wie Online Excel in Microsoft 365 oder Nextcloud usw. der Fall. Das gleiche wären fertige kommerzielle Lösungen für Schichtplanungen.

    Je nach Art der Cloud Lösung ist der technische Aufwand (und die nötige Kompetenz) vergleichbar mit dem eigenen Server oder minimal bei eine "Fully Managed" Lösung.

    Bei allen Cloud Lösungen sind DSGVO zu beachten und eben entsprechendes "Data processing agreement" mit dem Anbieter der Lösung abzuschließen. Da jedes Unternehmen ja einen Datenschutzbeauftragten haben muss, solltest Du Dich dazu an Euren wenden.

Nun zur Realisierung der Anwendung:
So eine Anwendung "zu Fuß" wirklich selber zu programmieren ist sehr viel aufwändiger als Du vermutest. Gerade alles was mit Kalender und Datum zu tun ist alles andere als trivial.
Um einfach mal reinzuschnuppern suche mal per Google nach sowas wie "Terminkalender programmieren". Da kommt z.B. dieses Video:


(Ich habe das jetzt nicht genauer angesehen, kann also nichts über die Qualität sagen).

Wie gesagt, es geht nur darum ein Gefühl dafür zu bekommen, wie man sowas überhaupt programmiert.

Mahonyreal schrieb:
Die Exceldatei soll dann als "Datenbank" dienen (Änderungen passieren dann nur innerhalb der Exceltabellen)
Das ist normalerweise eine super schlechte Idee, Excel Tabellen als Datenbank sind viel zu fehleranfällig.
Und damit geht das Problem los: Du musst im Prinzip Dein Excel "Backend" mit Hilfe einer Datenbank neu programmieren, und das ist komplex, denn Excel ist ein sehr mächtiges Tool, und die entsprechende Funktionalität im Backend zu programmieren ist aufwändig.

Kommen wir zu den realistischen Lösungen:

Daraus:
Mahonyreal schrieb:
Programm: Microsoft Office 2021 Professional Plus

ersehe ich das Ihr kein Microsoft 365 (ehemals Office 365) einsetzt. Eine mögliche Lösung wäre eben auf Microsoft 365 umzusteigen, jeder Mitarbeiter würde mindestens "Microsoft 365 Basic" für 5,60 EUR / Monat benötigen.
Damit kann man dann Online (auch per Smartphone) unter anderem auf Excel zugreifen. Ob man damit eine brauchbare Lösung hinbekommt, müsste man nochmal dran "längs denken". Denn so wie ich es sehe, soll ja nicht jeder Mitarbeiter alles sehen können und die Pläne verändern können.

Ich bin jetzt nicht der Office-Automation Experte der da alle Tools (z.B. auch Power Apps) usw. kennt um zu sagen was der beste Weg ist.

Genauso können auch Open Source Lösungen wie das hier schon genannte Nextcloud eine mögliche Lösung sein. Auch die kosten, wenn man sie professionell hostet, Geld.
 
  • Gefällt mir
Reaktionen: tomgit und azereus
tomgit schrieb:
Weißt du, welche Informationen du allein aus Identität und Schichtplan ziehen kannst?
klär mich bitte auf. außer familiennamen und arbeitszeit steht für gewöhnlich nichts anderes drauf. welche geheimen infos ziehst du daraus?
 
Alleine die Tatsache das Person X bei Firma Y arbeitet und z.B. eine Vollzeit- oder Teilzeitstelle hat, geht niemanden außerhalb der Firma was an. Jedenfalls kann es sein, dass die Person nicht möchte, dass das jemand weiß. Kann ja sein, das die Person dem Ehepartner erzählt, sie ist arbeiten, sich in Wirklichkeit aber mit einer außerehelichen Affäre vergnügt oder einfach in der Stammkneipe hockt ;)

Genauso darf in einem Schichtplan nicht der Grund einer Abwesenheit stehen, also ob es Urlaub oder Krankheit ist.

Es ist wie gesagt auch egal, ob Du oder die betroffene Person diese Info schützenswert findet, der Gesetzgeber geht davon aus, dass diese Daten unter Umständen schützenswert sind.

Die betroffenen Polizisten von diesem Leck:
https://www.fr.de/politik/daten-von...and-aus-versehen-freigegeben-zr-92449817.html

werden sicher auch nicht glücklich darüber gewesen sein.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Gizzmow, DefconDev und tomgit
Außerdem kann man anhand der Daten auch Bewegungsprofile erstellen. Ja, auch bei nur Nachnamen. Weil du hast trotzdem mehr Informationen (Einzugsgebiet), kannst aus der Abteilung/Unternehmen das Geschlecht, teilweise auch Alter, aggregieren, und/oder, anhand der Abwesenheiten/Urlaubszeiten, Familienstand erahnen.
 
  • Gefällt mir
Reaktionen: Gizzmow und TomH22
WhyNotZoidberg? schrieb:
klär mich bitte auf. außer familiennamen und arbeitszeit steht für gewöhnlich nichts anderes drauf. welche geheimen infos ziehst du daraus?
Das hat mit geheim nichts zu tun. Personenbeziebare Daten sind besonders schützenswert und unterliegen besonderen Anforderungen.
 
Also so ein excel/CSV export lässt sich doch recht einfach als HTML Tabellen importieren/darstellen mit PHP, JAVA oder anderen Sprachen oder auch in eine DB. Wenn das am richtigen Ort liegt auch automatisiert. Wo ich mich auskenne (PHP) ist so ein Kalender zwar nicht ganz trivial, aber gut erforscht, daher gibts ausreichend Anleitungsmaterial zum "zu Fuß gehen".

Es gibt auch schon einige fertig geschriebene Kalenderanwendungen, die je nach Optik besser oder schlechter passen bzw auch den CSV Import bieten, zb: https://github.com/agendav/agendav - oder auch Nextcloud(wobei das die Kanone wäre). Kalenderanwendungen hätten den Vorteil, das alle nachfolgenden Anfragen, die wie das Amen im Gebet kommen, gleich miterschlagen werden.

btw große anbieter verschleiern sicherheitsprobleme auch oft lieber als sie zu beheben:
https://www.derstandard.at/story/30...itik-an-sicherheit-von-microsofts-azure-cloud
 
netzgestaltung schrieb:
Also so ein excel/CSV export lässt sich doch recht einfach als HTML Tabellen importieren/darstellen mit PHP, JAVA oder anderen Sprachen oder auch in eine DB. Wenn das am richtigen Ort liegt auch automatisiert.
Also wenn man den Ansatz mal weiterdenkt und dabei annimmt, dass die einzelnen Excel Tabellenblätter bereits pro MA vorliegen - dann bräuchte man doch wirklich nur ein paar statische HTML Seiten, die man aus den exportieren CSV generiert. Nix Kalender auf dem Webserver oder sonstigen aufwändigen Kram. Aktualisieren ginge via Skript, das die (neu exportierten) CSV Daten nimmt und daraus neue statische Seiten generiert. Bräuchte man noch eine kleine Seite, die User+PW abfragt und dann nur den einzelnen Plan als HTML anzeigt.

Oder sehe ich das als (mehr oder weniger) Programmier-Noob komplett falsch?

Hosting ist dann wieder eine andere Baustelle, die Datenschutzdiskussion oben kommt ja nicht von ungefähr.
 
Zurück
Oben