Avatar billede crapman Nybegynder
14. januar 2004 - 09:25 Der er 7 kommentarer og
2 løsninger

Merarbejde udregning

Hejsa, jeg sidder og skal lave en elektronisk timeregistrering. Meningen er at den selv udregner hvor meget merarbejde en bruger har på en dag....

Jeg har en række felter som submittes... Det ene hedder sluttime og det andet slutmin

Det er selvfølgelig det timestamp som brugeren indtaster. Altså den time som han slutter og minuttet... Det vil eks se sådan ud:
Sluttime: 15
Slutmin: 30
Altså er brugeren sluttet klokken 15:30

Nu skal jeg så bare have lavet en udregning, der gør, at hvis brugeren slutter senere, eks. 18:45 så er der en variabel som hedder merarbejde, som hedder 3:15 fordi brugeren har arbejde 3 timer og 15 min over.....

Hvordan laver man det???
Avatar billede cesil Nybegynder
14. januar 2004 - 10:10 #1
prøv noget a'la det her

<%
arbejsslut = date() & " 15:30"
sluttid = date() & " " & sluttime & ":" & slutmin
overtid = datediff("h",arbejsslut,sluttid)

response.write overtid

%>
Avatar billede fennec Nybegynder
14. januar 2004 - 10:13 #2
if datediff("n","15:30",sluttid) > 0 then
...
  omregn datediff("n","15:30",sluttid) til timer/min
...
end if
Avatar billede crapman Nybegynder
14. januar 2004 - 10:21 #3
Cecils er næsten god, men den skriver kun timerne.... den skal skrive timer og minutter..... Sådan at arbejder man 2 timer og 45 min over skal der stå 2.45
Avatar billede cesil Nybegynder
14. januar 2004 - 10:23 #4
så brug fennec's og regn minuter om til timer/minuter bagefter
Avatar billede crapman Nybegynder
14. januar 2004 - 10:26 #5
Jah, men det var så mit spørgsmål... hvordan omregner jeg det? For hvis jeg blot bruger datediff så får jeg jo timerne for sig og minutterne for sig.....?
Avatar billede cesil Nybegynder
14. januar 2004 - 10:29 #6
arbejsslut = date() & " 15:30"
sluttid = date() & " " & sluttime & ":" & slutmin
overtid = datediff("n",arbejsslut,sluttid)

antaltimer = cdbl(overtid) / 60
minuter = overtid - (antaltimer*60)
Avatar billede crapman Nybegynder
14. januar 2004 - 10:33 #7
Fungerer ikke....

sluttime = 17
slutmin = 15

arbejsslut = date() & " 15:30"
sluttid = date() & " " & sluttime & ":" & slutmin
overtid = datediff("n",arbejsslut,sluttid)

antaltimer = cdbl(overtid) / 60
minuter = overtid - (antaltimer*60)

response.write antaltimer&":"&minuter


giver: 1,75:0
Avatar billede fennec Nybegynder
14. januar 2004 - 10:34 #8
fix(cdbl(datediff("n","10:30","12:25")) / 60) &":"&datediff("n","10:30","12:25") mod 60
Avatar billede crapman Nybegynder
14. januar 2004 - 10:40 #9
den fungerede perfekt fennec!!! :D
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester