08. januar 2004 - 20:11Der er
13 kommentarer og 2 løsninger
Smmere tid i ASP/Access
Jeg er ved at lave et træningsprogram i ASP/Access, og i den forbindelse skal jeg bla. lave et felt hvor man indtaster træningstid altså fx. 2:35 hvordan summerer man lettest.
Databasen hedder kmdata, tabellen hedder tid og den skal regen det samlede antal timer og minutter men har indtastet.
AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
Feltet i databasen skal være af typen tekst og alle tider skal indtastes i formatet tt:mm (f.eks. 2:35). Her er det lidt pænere uden testudskrivninger og dim'ning af gamle variabler og med lukning af diverse åbnede sager:
<% Set rs = Server.CreateObject("ADODB.RecordSet") Set Conn = Server.CreateObject("ADODB.Connection") strDSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("kmdata.mdb") Conn.Open strDSN
strSQL = "SELECT * FROM tid"
rs.open strSQL, conn
do while not rs.eof arrTid = split(rs("tid"),":") intTimer = CInt(arrTid(0)) intMinutter = CInt(arrTid(1)) intTotalMinutter = intTotalMinutter + (intTimer*60) + intMinutter rs.MoveNext Loop
Hvordan er måneden anført i db'en? Står der en dato eller et månednavn? Og skal brugeren kunne vælge hvilke måneder han/hun vil se, er det alle årets måneder indtil nu, alle de måneder, der er tal for i db'en, eller hvad?
-Måneden er anført i dd-mm-yyyy -Brugeren skal ikk ekunn evælge hvilken måden de vil se, men alle måneder skal listes op ved siden af hinanden (forestiller mig i en tabel) og neden under hver måden skal den samlede tid stå. -Det er jun fra jan-2004 til dec-2004
Har lavet noget tilsvarende på kilometer! Men kan ikke få det til at virke med tid....
Set rs = Server.CreateObject("ADODB.RecordSet") Set Conn = Server.CreateObject("ADODB.Connection") strDSN = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("database.mdb") Conn.Open strDSN
strSQL = "SELECT * FROM tider"
rs.open strSQL, conn
response.Write "<table><tr>"
For i=1 to 12 response.Write "<td>" & MonthName(i,true) & "</td>" Next
response.Write "</tr><tr>"
For i=1 to 12
intTotalTimer = 0 intTotalMinutter = 0
rs.MoveFirst do while not rs.eof if datepart("m",rs("dato")) = i then arrTid = split(rs("tid"),":") intTimer = CInt(arrTid(0)) intMinutter = CInt(arrTid(1)) intTotalMinutter = intTotalMinutter + (intTimer*60) + intMinutter end if rs.MoveNext Loop
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.