Udtræk fra Access virker lokalt men ikke på server
Hej EksperterHar behov for hurtig hjælp!
Jeg har lavet en (eller forsøgt) at lave et udtræk fra min Access DB der skal hente bestemte poster alt efter hvad klokken er.
Når jeg kører min asp fil lokalt på min engen Windows 8 PC med IIS 8.5 kører det hele fint og jeg får de udtræk jeg har behov for, men når det bliver uploadet til den server i USA jeg har host på, virker det ikke og jeg kan ikke regne ud hvorfor :-s
mintServerToOrgHourOffset = 10 'Tilret til DK tidszone
mvarOrgCurDtTime = DateAdd("H", mintServerToOrgHourOffset, Now())
mvarOrgCurDt = DateValue(mvarOrgCurDtTime)
mvarOrgCurTime = TimeValue(mvarOrgCurDtTime)
tidspunkt = hour(mvarOrgCurTime)
if tidspunkt <= 9 then
tidspunkt = "0" & tidspunkt
end if
tidspunkt_sms = hour(DateAdd("h",2,mvarOrgCurDtTime))
if tidspunkt_sms <= 9 then
tidspunkt_sms = "0" & tidspunkt_sms
end if
Set rs_tider = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT * FROM tider_tid where ref_dato = " & rs_dato("id") & " and " & " left(tid_start,2) " & " = '" & tidspunkt_sms & "'"
Set rs_tider = Conn.Execute(strSQL)
if rs_tider.eof or rs_tider.bof then
else
do until rs_tider.eof or rs_tider.bof
Jeg går udfra at det er noget i denne linje der driller mig:
strSQL = "SELECT * FROM tider_tid where ref_dato = " & rs_dato("id") & " and " & " left(tid_start,2) " & " = '" & tidspunkt_sms & "'"
Når jeg kører det lokalt virker det fint hvad enten jeg har '' omkring tidspunkt_sms eller ej på serveren i USA får jeg denne fejl, hvis jeg ikke har tidspunkt_sms omrkænset af ''
Microsoft Access Database Engine error '80040e07'
Data type mismatch in criteria expression.
Der er 10 timers forskel mellem DK tid og den tidszone serveren står i, det tager de øverste par linjers kode højde for. Derefter finder jeg den aktuelle time (fx 15) - jeg skal så have fundet alle de poster i databasen som ligger to timer fremme (i det her tilfælde så 17) - i min db har jeg et felt der heddder start_tid som indeholder et komplet tidspunkt (fx 17:00:00) - men da jeg kun er interesseret i timen, bruger jeg left(tid_start,2) til kun at få de tal frem...
Håber meget på hurtig hjælp