0

Zeiterfassung mit Nachtschicht

Hallo baue gerade an einer Zeiterfassung zur Kontrolle meiner Arbeitszeiten.

Ich Arbeite im 3 Schicht System und habe immer 30 min Pause.

Nachtschicht von 22:00 - 06:00 Uhr

Spätschicht von 14:00 - 22:00 Uhr

Frühschicht von 06:00 - 14:00 Uhr.

wie bekomme ich es hin das er mir wenn ich im Auswahlfeld Schichten auf Nachtschicht gehe er mir gleich von 22:00 - 06:00 einträgt und bei den anderen Schichten das gleiche.

Habe meine DB mal mit angehängt.

Lg Michael

28 Antworten

null
    • mirko3
    • vor 6 Monaten
    • Gemeldet - anzeigen
    if Anfang < Ende then
        number(Ende - Anfang - time(1800000)) / 3600000
    else
        number(datetime(today() + 1, Ende) - datetime(today(), Anfang) - time(1800000)) /
        3600000
    end
    

    Du mußt Dir noch etwas einfallen lassen, wie du das mit der Pause änderst. Im Moment hast Du ein Textfeld und damit kann man nicht rechenen. Falls Du in Zukunft mal veränderte Pausenzeiten hast, dann wird das nicht mit eingerechnet, da ich mit time(1800000) das im Script fix eingetragen habe. Das heißt ersetze es am Besten durch ein Zeitdauerfeld, Formatierung auf Minuten und du bist flexibel, wenn Du mal länger die Beine hochlegen willst. Script sieht dann so aus.

    if Anfang < Ende then
        number(Ende - Anfang - Zeitdauer) / 3600000
    else
        number(datetime(today() + 1, Ende) - datetime(today(), Anfang) - Zeitdauer) /
        3600000
    end
    
      • Michael
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Hi, jetzt sieht es gut aus was kann ich noch am Code ändern das es mir die minus stunden auch rot anzeigt die bleiben grün. hab es so probiert funktioniert aber nicht.

      case 0 < Gleitzeit: styled(text(Gleitzeit) + "h", "#ff0000")

      • mirko3
      • vor 6 Monaten
      • Gemeldet - anzeigen

      He? also <0 rot, 0-60 grün, 60-90 orange und >90 rot? Dann so.

      switch true do
      case Gleitzeit < 0:
          styled(text(Gleitzeit) + "h", "red")
      case 0 <= Gleitzeit and Gleitzeit <= 60:
          styled(text(Gleitzeit) + "h", "green")
      case 60 < Gleitzeit and Gleitzeit <= 90:
          styled(text(Gleitzeit) + "h", "orange")
      case 90 < Gleitzeit:
          styled(text(Gleitzeit) + "h", "red")
      end
      
      • Michael
      • vor 6 Monaten
      • Gemeldet - anzeigen

       Ja genau so. Vielen vielen Dank.

      Lg Michael