Hjelp til script for utregning av antall timer

Har et skjema der bruker skal skrive fra-til klokkeslett i hver sine felt(datatype er satt til klokkeslett). Jeg vil ha et felt under som summerer antall timer. Er det noen som har tips på en kode som greit kan gjøre dette?

@KarinaH her er en “pedagogisk” måte du kan gjøre det på. Det kan lages et mer effektivt script ved bruk av det som kalles “regular expressions”, men tenker at dette er greiere for deg å forstå til senere bruk. I bildet under har jeg

  • to felt satt med klokkelsett som type
  • Antall timer som et numerisk felt satt med to desimaler
  • Funksjonselement for å gjøre utregningen

I bildet under viser jeg selve scriptet som er lagt inn i funksjons-elementet kalt “Utregning”. Slik er scriptet

var Fratimer = substr(Fra_klokke, 0,2);
var Framin = substr(Fra_klokke, 3,2);
var Tiltimer = substr(Til_klokke, 0,2);
var Tilmin = substr(Til_klokke, 3,2);

var Timer = Tiltimer-Fratimer;
var Minutter = (Tilmin-Framin)/60;

var Total = Timer+Minutter;
return Total;

Bruk av substr (substring) kan du lese mer om i brukerdokumetasjonen som jeg lenker til under, men det jeg gjør er å hente ut det jeg ønsker fra teksten.

  • i variabelen “Fratimer” henter jeg ut fra feltet mitt “Fra Klokke”. Det jeg henter ut er posisjon 0 (som er start) og lenge på to tegn. så 12:00, så starter jeg på posisjon 0 som er FØR tallet 1 og to tegn altså 1 og 2
  • var Framin (3,2) henter jeg ut posisjon 3 og lengde 2. Eksmepel kl 12:30, så er posisjon 0 tallet 1, posisjon 1 tallet 2, posisjon 2 kolon( : ) og posisjon 3 tallet 3.
    osv

Dette gjør jeg med både timer og minutter for begge feltene

  • For “var Timer” regner jeg ut antall timer
  • For “var Minutter” regner jeg ut antall minutter
  • var “Total”, så summer jeg alt sammen
  • I “return Total” så regner jeg sammen hele sulamitten

Jeg går så til “Antall timer” feltet, går inn i verdiformel-feltet (se skjermbildet over) og skriver inn = og Ctrl + klikker på funksjonselementet “Utregning”.

Her vises selve resultetet av utregningen i front


image

4 Likes

Hei!
Hvordan vil det være mulig å regne ut antall timer som går utover 1 døgn?
F.eks.: Hvor mange timer er det mellom 12.01.21 kl. 10.00 og 13.01.21 kl. 20.00?

@thormod