webForumDet fria alternativet

Antal timmar?

ASP

25 svar · 971 visningar · startad av webbSAJTEN

Medlem sedan jan. 2002992 inlägg
Frågan#1

Tjena alla!
Tänkte koda ihop en liten grejj för att kika hur många timmar jag jobbar genom att skriva startid, sluttid, gick på lunch, kom tillbaka från lunch.

Hur ska jag göra för att den ska räkna ut hur många timmar jag har jobbat?

Medlem sedan sep. 20026 425 inlägg
#2

DateDiff()-funktionen är ganska bra. :)

Medlem sedan jan. 2002992 inlägg
#3

Det var den jag trodde, ska läsa lite mer om den :)
Återkommer om det skiter sig...

Medlem sedan jan. 2002992 inlägg
#4
<%
Dim Datum
Datum = DateDiff("n", "08:00", "16:45")

Timmar = Datum/60%>

response.write(Timmar)
%>

Sådär fixar jag det hela :D

Tack!

Medlem sedan jan. 2002992 inlägg
#5

Skottår?

Jag tänkte loopa ut formulärfält beroende på hur många dagar det är en viss månad.

Manad = Month(Date)

If Manad = "1" OR "4" OR "6" OR "8" OR "10" OR "12" then
x = "31"
elseif Manad = "2" then
x = "28"
else
x = "30"
end if

Men hur ska jag göra för att veta om det är skottår eller inte, datumet i februari får ju inte vara fel..

Medlem sedan sep. 20026 425 inlägg
Medlem sedan jan. 2002992 inlägg
#7

Nu har jag kommit en bit på väg :D
Nu ser den dock väldig rörig ut..

http://www.dastar.se/lon/add.asp kika där..
Där ska en anställd lägga in sina tider..

Jag skulle vilja att det enbart i dagens datum det skall finnas fält att fylla i, alltså köpa en check i For-loopen men jag vet inte hur jag skall göra den.

När de är klart skulle jag vilja att man kunde bestämma ett datum där man vill fylla i, så det bästa vorde om datumet var dynamiskt på något sätt..

Medlem sedan sep. 20026 425 inlägg
#8

Du kan använda IsDate()i en villkorssats för att kolla om det är ett värde som kan tolkas som ett datum användaren fyllt i.

TIPS
Din sida är ungefär 0,5 mb stor vilket är på tok för mycket. Kanske skulle du dela upp veckovis i stället för månadsvis?

Medlem sedan jan. 2002992 inlägg
#9

Förstår inte vad du menar faktiskt :S

Jo, absolut.. Jag skall göra den mycket midre.. Den är otroligt seg nu :)

Medlem sedan sep. 20026 425 inlägg
#10

Jo, som det är just nu så visar du 30 eller 31 rader med dropdownrutor etc. det blir väldigt mkt för webbläsaren att läsa vilket gör att din sida är mkt tung att ladda, dvs laddas långsamt. Om du i stället visar sju dagar åt gången eller dyl. så blir den mer lättladdad.

Medlem sedan jan. 2002992 inlägg
#11

Jo de förstod ja =)
De var IsDate() jag inte flrstod hur ja skulle använda..

Bland alla rader som finns under dropdownmenyn, det är så ja vill att de egentligen ska se ut, dock ville ja bara att datum som har varit skall visas och det är de ja inte vet hur ja ska göra..

Dropdownmenyn är en nödlösning då man bara skriver in tidraporten för en dag i taget..

Medlem sedan apr. 20031 660 inlägg
#12

HEJ!

Snyggt formulär, alltid roligt med mycket att fylla i! :P

Diverse synpunkter, vilka du säkert tänkt på delvis:

1. Kolla på datumraden du skall skriva ut, om det är dagens datum. Är det det, skrivs fälten ut som vanligt, är det före/efter, gör dem disabled. (Tänk också på att man/någon måste kunna redigera gamla tider.)

2. Ser att du manuellt loopar ut 0-59, eftersom du har fått in 47, 58, 49 i listrutan.
Ändra det till loop (0)0-59.

3. Måste man verkligen vara minutnoggrann? Jag hade använt (minst) femminutersintervall.

4. Om du byter intervall, kanske radiobuttons för att markera timme/minut blir enklare, då riskerar man inte att "scrolla bort" värdet.

5. Behöver du alla dygnets 24 timmar?

6. Kan du inte lösa detta genom att man själv fyller i sin tid, och sedan räknar du efter det? 07.50-16.45, 35 min lunch (15min frukost/em-kaffe) => 5 min plusflex? (8h arbetsdag)

Medlem sedan jan. 2002992 inlägg
#13

Haha, jo visst är de ;)

1. Den skriver inte ut från en databas utan först kollar jag hur många dagar det är denna månad och sen loopar jag ut antal dagar så jag vet inte hur jag ska kolla vilket datum det är på raden.
Vet inte om ja ska lägga till någon "osynsligt" som också loopar ut året-månaden-dagen där dagen är samma som det som står till vänster, förstår du.
Då kanske man kan kolla vilkden rad som är idag?

2. Menar du att jag ska köra en loop på alla formulär istället?

3. Jag har funderat på 10minutersintervaller :)

4. Radiobuttons tror jag blir rörigare, eller?

5. Det finns många på jobbet där som kan få för sig att jobba på natten vid bokslut.

6. Jag vill inte att man ska skriva i det själv, kan lätt bli fel då har jag tänkt..

Tack för ditt svar!!

Medlem sedan jan. 2002992 inlägg
#14

Jag lyckades göra så att bara den skriver ut 13 rader eftersom att det är den 13:e idag..
Nu kom dock mitt riktigt svåra problem :S
Hur sjutton ska jag spara allt i en databas?? Så att varje rad kommer på en ny rad..

Någon som har en idé?

Medlem sedan apr. 20031 660 inlägg
#15

HEJ!

1. Kontrollera om dagens datum är lika med det du ska skriva ut.

2, 3. Ja, fast med endast 00-50 blir det ju sex st, dvs onödigt. Dessutom hade du isåfall fått programmera in första nollan i 00, dvs blir mer kod än loopen.

4. Nja, kan bli, beror på hur det ser ut, om man kan markera mer än en dag etc. Kör på dd-varianten i första hand, och markera aktuell dag.

5. Okej, då får de väl göra det då! :h

6. Ok, du känner dig själv bäst! :e

Spara, en post per dag? Start-slut-lunch-datum?

Medlem sedan jan. 2002992 inlägg
#16

Jag kom nu att man inte skall kunna spara flera dagar samtidigt utan om ni kollar på sidan så ser ni..
Är det dagens datum så står det Spara, annars redigera.

Mitt problem nu är att datumet som står ovanför inputen är fel.
Normalt skriver den ut 2005-12-1, men jag vill ju ha 01 fram till 09.

<%=Ar%>-<%=Manad%>-<%if cint(dagen) > cint(9) then %>0<%=dagen%><%else%><%=dagen%><%end if%>

Sådär har jag det nu..

Och ni ser resultatet.. Det blir 010 011 012 också..
Hur skall jag lösa det.

Medlem sedan jan. 2002992 inlägg
#17
<%=Ar%>-<%=Manad%>-<%if cint(dagen) <= cint(9) then %>0<%=dagen%><%else%><%=dagen%><%end if%>

Sådär, nu funkar de =)

Ska se om jag kan få till det där med att spara skiten i databasen :P
Återkommer om jag får problem, vilket jag säkert kommer att få!

Medlem sedan jan. 2002992 inlägg
#18

Nästan de mesta fungerar nu..
Jag skule vilja lagra antal timmar jag jobbat..

strTotaltJobb = DateDiff("n", strJobbKom, strJobbGick)
strTotalLunch = DateDiff("n", strLunchFran, strLunchTill)

strTotaltJobb2 = strTotaltJobb/60
strTotalLunch2 = strTotalLunch/60

Antal = strTotaltJobb2-strTotaltLunch2
strTotalt = Round(Antal,2)

sådär försöker jag lösa det, men jag får bara ut heltal, måste få med en desimal också..

Medlem sedan juni 200032 967 inlägg
#19

Innan jag säger något annat måste du berätta för mig varför du prefixar alla variabler med str, trots att de inte är strängar? Ska man använda ungersk notation ska man göra det ordentligt, annars är det bara onödigt.

Medlem sedan juni 200032 967 inlägg
#20

Om du skriver ut strTotalt med response.write, menar du att du då inte har några decimaler? Eller sparas det inga decimaler i databasen?

272 ms totalt · 4 externa anrop · v20260731065814-full.bd618308
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)
130 ms — ändringar (db)