Avatar billede zantiago Nybegynder
03. august 2004 - 12:42 Der er 4 kommentarer og
1 løsning

Find poster imellem to datoer

Hej Eksperter

Jeg skal tælle hvor mange poster der ligger imellem de to datoer.
Jeg kan se i databasen, at der ligger to.
1: 18-03-2004
2: 24-03-2004
---------------------
De to datoer som posterne skal ligge i mellem:
01-01-2004 (rs_eval("periode1"))
31-12-2004 (rs_eval("periode2"))

<%
i = 0
RS_ordre.Open "SELECT * FROM [purchtable] WHERE ORDERACCOUNT = '" & rs_lev("ACCOUNTNUM") & "' AND CREATEDDATE < " & rs_eval("periode1") & " AND CREATEDDATE > " & rs_eval("periode2"), oAXDB
do while not rs_ordre.eof
i = i + 1
rs_ordre.Movenext
Loop
response.write i
%>

Hvis jeg flyter dato tjekkene så skriver den 4, men hvis jeg skriver som ovenstående, så skriver den 0. HVORFOR???

//Z
Avatar billede sth Novice
03. august 2004 - 15:25 #1
brug between
noget i stil med
SELECT * FROM purchtable where CREATEDDATE between '" & fra_dato & "'  and '"& til_dato

Det virker for mig
Avatar billede zantiago Nybegynder
04. august 2004 - 08:29 #2
Cool - tester lige :o)
Avatar billede zantiago Nybegynder
04. august 2004 - 08:34 #3
Nej det virker desværre heller ikke :o(

Jeg har fået at vide noget med at mine datoer skal se sådan her ud:
CREATEDDATE < {ts '1998-05-02 01:23:56'} AND CREATEDDATE > {ts '1998-05-02 01:23:56'}",oAXDB

Kender I noget til det?
Avatar billede zantiago Nybegynder
04. august 2004 - 12:34 #4
Jeg fandt en løsning :o)
------------------------------------------------------------------------------------
<%
function strZeroPad(strInput, lngLength)
          if len(strInput)<lngLength then
              strZeroPad=string(lngLength-len(strInput),"0") & strInput
          else
              strZeroPad=strInput
          end if
    end function

    Function strODBCDateTime(dtmDate)
        strODBCDateTime = "{ts '" & strZeroPad(CStr(Year(dtmDate)), 4) & "-" & strZeroPad(CStr(Month(dtmDate)),2) & "-" & strZeroPad(CStr(Day(dtmDate)),2) & " " & strZeroPad(CStr(Hour(dtmDate)),2) & ":" & strZeroPad(CStr(Minute(dtmDate)),2) & ":" & strZeroPad(CStr(Second(dtmDate)),2) & "'}"
    End Function


sum = 0
RS_ordre_line.open "SELECT * FROM [PURCHTABLE] WHERE LTRIM(ORDERACCOUNT) = '" & rs_eval("lev_nr") & "' AND CREATEDDATE >= " & strODBCDateTime(rs_eval("periode1")) & " AND CREATEDDATE <= " & strODBCDateTime(rs_eval("periode2")) & "", oAXDB

do while not rs_ordre_line.eof

RS_line.open "SELECT * FROM [PURCHLINE] WHERE LTRIM(PURCHID) = '" & Trim(rs_ordre_line("PURCHID")) & "'", oAXDB
do while not rs_line.eof

sum = sum + (Trim(rs_line("LINEAMOUNT")))

rs_line.Movenext
Loop
RS_line.close
rs_ordre_line.Movenext
Loop

response.write sum & "&nbsp;" & rs_lev("CURRENCY")
%>
Avatar billede sth Novice
04. august 2004 - 15:22 #5
Hmmm  jeg fatter ikke hvorfor det ikke skulle virke, nå skidt, du fandt jo en løsning
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