Calcolare la durata degli eventi in ore e giorni

Questa documentazione spiega la logica del calcolo orario usato per gli eventi pianificati, in relazione alle diverse impostazioni di evento e profilo orario adottato dalle risorse.

Profili orari disponibili: per Risorsa o per Azienda

Profilo della risorsa

Maschera "Risorsa" , tab "Orari" -> "Definire la capacità di lavoro secondo"

  • Slot orari [RES-SLOT]: È possibile definire fasce orarie mattutine e pomeridiane per ogni giorno lavorativo della settimana e per i giorni non lavorativi.
  • Slot orari

  • Numero di ore [RES-HRS]: potete specificare un numero di ore lavorate per ogni giorno lavorativo o non lavorativo della settimana.
  • Numero di ore del profilo

  • "Conta tutte le ore" è l'opzione per il profilo orario in ore al giorno [RES-HRS-COUNTALL]:
    Se questa opzione è attivata, le ore lavorate saranno calcolate come per un evento in ore.
    Se questa opzione non è attivata, il numero di ore conteggiate per ogni giorno è il numero di ore indicate nel profilo per gli eventi in ore.

    Numero di ore Opzione conta tutte le ore

Profilo generale dell'azienda

Menu Strumenti -> Opzioni - > Profilo orario

Profilo generale dell'azienda

  • Numero di ore al giorno [COMP-HRS]: Numero di ore al giorno per l'Azienda
  • Slots [COMP-SLOTS]: Potete definire il profilo orario lavorativo aziendale generale per la mattina e il pomeriggio
  • Ore notturne [COMP-NIGHT-SLOTS]: Puoi definire lo slot notturno.

Evento di un'intera giornata [EVT-ALLDAY]

Per gli eventi di un'intera giornata, la casella Giornata intera è selezionata. L'evento si svolge nell'arco di 1 o più giorni interi.
Distinguiamo 2 tipi di eventi di a "giornata intera":

  • Evento di un'intera giornata con termine [EVT-ALLDAY-END] : Viene specificata la fine dell'evento
  • Eventi in Giorni

  • Evento di un'intera giornata con una durata [EVT-ALLDAY-DURATION] : La durata dell'evento è specificata in numero di giorni. La fine dell'evento viene quindi calcolata in base al profilo orario..
  • Eventi in Ore

Eventi in ore [EVT-TIME]

Gli eventi in ore sono definiti con un'ora di inizio e un'ora di fine. La casella "giornata intera" è deselezionata.
Distinguiamo 2 tipi di eventi in ore:

  • Evento in ore con termine [EVT-TIME-END] : Viene specificata la fine dell'evento
  • Evento in ore con termine


  • Evento in ore con una durata [EVT-TIME-DURATION] : La durata dell'evento è specificata in ore e minuti. La fine dell'evento viene calcolata in base al profilo orario.
  • Eventi in Ore

Suddividere gli eventi in periodi

Eventi in Ore

  • [PERIOD-ON]: Periodo lavorato definito nel profilo della risorsa.
  • [PERIOD-OFF-MIDDLE]: Periodo non lavorato specificato nel profilo della Risorsa o Festività all'interno di un univo Evento. Questo periodo non è considerato quando si calcolano le ore.
  • [PERIOD-OFF-EXTREMITY]:Periodo non lavorato o giorni festivi a un'estremità di un evento

I vari tipi di ore nei report di Excel

Questi sono i dati che si possono analizzare in Excel:

I vari tipi di ore nei report di Excel

  • Numero di ore standard [Dat_Hours]: Numero di ore lavorate incluse nel profilo orario giornaliero della risorsa [PERIOD-ON].
  • Numero di ore Extra [Dat_HoursExtra]: numero di ore lavorate fuori dal profilo orario standard oppure in giorni di festività pubblica o comunque non lavorativi e al termine di un Evento [PERIOD-OFF-EXTREMITY]
  • Numero di ore standard [Dat_Days]: questo valore indica il valore di ore di un evento (Dat_Hour) espresso in giorni; Numero di ore lavorate all'interno del profilo standard (Dat_Hour) per ogni evento.
  • Numero di Ore Extra [Dat_DaysExtra]: questo valore indica il valore di ore straordinarie di un evento (Dat_HourExtra) espresso in giorni; numero di ore fuori dal profilo orario standard, non notturne (Dat_HoursExtra) per ogni evento, separate dalle ore giornaliere standard del profilo della risorsa. E’ un rapporto tra due valori.
  • Numero di Ore Notturne [Dat_NightHours]: numero di ore lavorate durante lo slot notturno [COMP-NIGHT-SLOTS]
  • Numero di Ore standard [Dat_DayHours]: numero di ore non in orario notturno

La pausa

La pausa in un evento è applicabile per gli eventi con durata oraria, e solamente per eventi che si svolgono in una giornata. La relativa deduzione è inizialmente calcolata nelle ore extra [Dat_HoursExtra] e poi considerando le ore lavorate standard [Dat_Hours].

Giorni festivi

Sottrate i giorni festivi dalle durate calcolate : Dal menu Strumenti - Opzioni - Evento, puoi scegliere di sottrarre i giorni festivi dalle durate calcolate.

Alcuni scenari reali esemplificativi

I dati

Profilo generale dell'Azienda

  • [COMP-SLOT] = dalle 9.00 alle 12.30 e dalle 13.30 alle 18.00, 8 ore al giorno
  • [COMP-NIGHT-SLOTS] = dalle 21.00 alle 5.00
  • [COMP-HRS] = 8 ore al giorno

Eventi di un'intera giornata con fine [EVT-ALLDAY-END]:

  • 1 giorno di formazione in una giornata lavorativa: Evento nell'arco di un'intera giornata lavorativa
  • 2 giorni di formazione che terminano sabato: Evento nell'arco di 2 giorni con l'ultimo giorno in un giorno non lavorativo
  • 1 giorno di training di domenica: Evento nell'arco di un'intera giornata non lavorativa

Eventi in ore con fine [EVT-TIME-END]:

  • Training dalle 14.00 alle 16.00: Evento in ore all'interno dell'orario lavorativo standard
  • Training dalle 16.00 alle 22.00: Evento in ore con termine oltre l'orario lavorativo standard
  • Training che inizia alle 15 del mercoledì e termina alle 12.00 del giovedì: Evento di più giorni in ore

Eventi di un'intera giornata con durata [EVT-ALLDAY-DURATION]:

  • 1 giorno di formazione in una giornata lavorativa: Evento nell'arco di un'intera giornata lavorativa
  • 2 giorni di formazione a partire da venerdì: L'allenamento termina quindi lunedì
  • Allenamento di 2 giorni a partire dalla domenica: Evento di 2 giorni che inizia domenica -> L'allenamento termina lunedì

Evento nel tempo con una durata [EVT-TIME-DURATION]:

  • 2 ore di formazione: Evento che inizia in un periodo di lavoro
  • 15 ore di formazione: Evento che inizia in un periodo di lavoro
  • 2 ore di formazione la domenica: Evento che inizia in un periodo non lavorativo
  • 10 ore di allenamento dalle 14:00 di domenica: Evento che inizia in un periodo non lavorativo

Scenario 1: [RES-SLOT] = dalle 10.00 alle 12.30 e dalle 13.30 alle 18.00, 7 ore al giorno, tutti i giorni tranne sabato e domenica

Esportazione verso Excel:

[RES-SLOT] = dalle 10.00 alle 12.30 e dalle 13.30 alle 18.00, 7 ore al giorno, tutti i giorni tranne sabato e domenica Dat_Hours Dat_HoursExtra Dat_NightHours
[EVT-ALLDAY-END] 1 giorno di formazione in una giornata lavorativa 7 0 0
[EVT-ALLDAY-END] 2 giorni di formazione che terminano sabato 7 8 0
[EVT-ALLDAY-END] 1 giorno di training di domenica 0 8 0
[EVT-TIME-END] Training 14.00 - 16.00 2 0 0
[EVT-TIME-END] Training 16.00 - 22.00 2 4 1
[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì 5 0 0
[EVT-ALLDAY-DURATION] 1 giorno di formazione in una giornata lavorativa 7 0 0
[EVT-ALLDAY-DURATION] 2 giorni di formazione a partire da venerdì 14 0 0
[EVT-ALLDAY-DURATION] Allenamento di 2 giorni a partire dalla domenica 7 8 0
[EVT-TIME-DURATION] 2 ore di formazione 2 0 0
[EVT-TIME-DURATION] 15 ore di formazione 15 0 0
[EVT-TIME-DURATION] 2 ore di formazione la domenica 0 2 0
[EVT-TIME-DURATION] 10 ore di allenamento dalle 14:00 di domenica 6 4 0

Dettagli sul metodo di calcolo delle ore:
[EVT-ALLDAY-END] 2 giorni di training
[Dat_Hours] = 7 ore di venerdì = [RES-SLOT]
[Dat_HoursExtra] = 8 ore di sabato = [COMP-SLOT]

[EVT-TIME-END] Training 16.00 - 22.00
[Dat_Hours] = 2 ore dalle 16.00 alle 18.00
[Dat_HoursExtra] = 4 ore dalle 18.00 alle 22.00
[Dat_NightHours] = 1 ora dalle 21.00 alle 22.00

[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì
[Dat_Hours] = 5 ore che includono 3 ore di mercoledì dalle 15.00 alle 18.00 e 2 ore di giovedì dalle 10.00 alle 12.00

Scenario 2: [RES-HRS] = 7 ore al giorno, tutti i giorni esclusi i sabati e domeniche

Esportazione verso Excel:

[RES-HRS] = 7 ore al giorno, tutti i giorni esclusi i sabati e domeniche Dat_Hours Dat_HoursExtra Dat_NightHours
[EVT-ALLDAY-END] 1 giorno di training 7 0 0
[EVT-ALLDAY-END] 2 giorni di training 7 8 0
[EVT-ALLDAY-END] 1 giorno di training di domenica 0 8 0
[EVT-TIME-END] Training 14.00 - 16.00 2 0 0
[EVT-TIME-END] Training 16.00 - 22.00 6 0 1
[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì 14 0 1
[EVT-ALLDAY-DURATION] 1 giorno di formazione in una giornata lavorativa 7 0 0
[EVT-ALLDAY-DURATION] 2 giorni di formazione a partire da venerdì 14 0 0
[EVT-ALLDAY-DURATION] Allenamento di 2 giorni a partire dalla domenica 7 8 0
[EVT-TIME-DURATION] 2 ore di formazione 2 0 0
[EVT-TIME-DURATION] 15 ore di formazione 15 0 0
[EVT-TIME-DURATION] 2 ore di formazione la domenica 0 2 0
[EVT-TIME-DURATION] 10 ore di allenamento dalle 14:00 di domenica 0 10 0

Dettagli sul metodo di calcolo delle ore:

[EVT-ALLDAY-END] 2 giorni di training
[Dat_Hours] = 7 ore di venerdì = [RES-HRS]
[Dat_HoursExtra] = 8 ore di sabato = [COMP-HRS]

[EVT-TIME-END] Training 16.00 - 22.00
[Dat_Hours] = 6 ore dalle 16.00 alle 22.00
[Dat_NightHours] = 1 ora dalle 21.00 alle 22.00

[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì
[Dat_Hours] = 14 ore che includono 7 ore di mercoledì dalle 17.00 alle 22.00 e 7 ore di giovedì dalle 5.00 alle 22.00 poiché il massimo numero di ore conteggiate al giorno è pari a 7 per slot [RES-HRS]
[Dat_NightHours] = 1 ora dalle 21.00 alle 22.00 di Mercoledì

Scenario 3: [RES-HRS-COUNTALL] = 7 ore al giorno utilizzando l'opzione "Conta tutte le ore", tutti i giorni escluso il Sabato e la Domenica

Esportazione verso Excel:

[RES-HRS-COUNTALL] = 7 ore al giorno utilizzando l'opzione "Conta tutte le ore", tutti i giorni escluso il Sabato e la Domenica Dat_Hours Dat_HoursExtra Dat_NightHours
[EVT-ALLDAY-END] 1 giorno di training 7 0 0
[EVT-ALLDAY-END] 2 giorni di training 7 8 0
[EVT-ALLDAY] 1 giorno di training di domenica 0 8 0
[EVT-TIME-END] Training 14.00 - 16.00 2 0 0
[EVT-TIME-END] Training 16.00 - 22.00 6 0 1
[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì 21 0 8
[EVT-ALLDAY-DURATION] 1 giorno di formazione in una giornata lavorativa 7 0 0
[EVT-ALLDAY-DURATION] 2 giorni di formazione a partire da venerdì 14 0 0
[EVT-ALLDAY-DURATION] Allenamento di 2 giorni a partire dalla domenica 7 8 0
[EVT-TIME-DURATION] 2 ore di formazione 2 0 0
[EVT-TIME-DURATION] 15 ore di formazione 15 0 0
[EVT-TIME-DURATION] 2 ore di formazione la domenica 0 2 0
[EVT-TIME-DURATION] 10 ore di allenamento dalle 14:00 di domenica 2 8 0

Dettagli sul metodo di calcolo delle ore:

[EVT-ALLDAY-END] 2 giorni di training
[Dat_Hours] = 7 ore di venerdì = [RES-HRS]
[Dat_HoursExtra] = 8 ore di sabato = [COMP-HRS]

[EVT-TIME-END] Training 16.00 - 22.00
[Dat_Hours] = 6 ore dalle 16.00 alle 22.00
[Dat_NightHours] = 1 ora dalle 21.00 alle 22.00

[EVT-TIME-END] Training inizia alle 15.00 di mercoledì e termina alle 12.00 del giovedì
[Dat_Hours] = 21 ore che includono 9 ore di Mercoledì dalle 15.00 alle 24.00 e 12 ore di Giovedì dalle 24.00 alle 12.00
[Dat_NightHours] = 8 ore che includono 3 ore dalle 21.00 alle 24.00 e 5 ore dalle 24.00 alle 5.00

Eventi espressi in durata

Calcolo della fine in base al profilo
Per gli eventi con una durata specificata, la fine viene calcolata in base al profilo temporale della risorsa.

Alcuni casi d'uso:
[EVT-ALLDAY-DURATION] 2 giorni di formazione a partire da venerdì
Questo evento termina il lunedì successivo perché i fine settimana non vengono conteggiati.

[EVT-TIME-DURATION] La formazione dura 15 ore a partire dalle ore 9 del mercoledì
[RES-HRS] : Si contano 7 ore il primo giorno, quindi 7 ore il secondo giorno e 1 ora il terzo giorno. L'evento sarà quindi articolato su 3 giorni.
[RES-HRS-COUNTALL] : Vengono contate 15 ore consecutive. L'evento termina alle 6 di giovedì mattina.

Creazione di Rapporti

Sarete quindi in grado di generare tabelle riepilogative che riporteranno le ore lavorate standard, extra, notturne esportando i dati in report di Excel o utilizzando le funzionalità API per un'integrazione specifica e personalizzata.