Avatar billede bugger Nybegynder
04. januar 2004 - 10:36 Der er 11 kommentarer og
1 løsning

Koks i ugetallet

Hejsa
<% Session.LCID = 1030 %>
Dato1=29-12-03
Dato3=30-12-03

DatePart('ww',dato1,2,0) giver uge 53
DatePart('ww',dato2,2,0) giver uge 1

29 december er jo ikke i uge 53, men i uge 1. Hvordan hulen kommer jeg ud over det problem?

Det skal bruges i en SQLstreng, så jeg kan ikke lave "if then" Her er SQL' en

strSQL="SELECT tider.altnavn, tider.altdistance, tider.alternativ, tider.TidID, ruter.Mlangde, tider.Dato, DatePart('ww',dato,2,0) AS ugenr FROM ruter INNER JOIN tider ON ruter.RuteID = tider.RuteID where tider.brugerID=" & session("brugerID") & " AND tider.dato >= #" & startdato & "# AND tider.dato <= #" & slutdato & "# order by dato"

Tak for hjælp.
Avatar billede mikl-dk Nybegynder
04. januar 2004 - 12:51 #2
Kan man ikke bare altid køre den gennem et modulus 52? Så er det vel løst?
Avatar billede mikl-dk Nybegynder
04. januar 2004 - 12:52 #3
Det skal lige siges, at jeg ikke har taget besværet at læse dine referencer, erikjacobsen...
Avatar billede wilweb Nybegynder
04. januar 2004 - 12:59 #4
Det erikjakobsen henviser til virker fint, måske kunne du bruge det!

<%
tmpDate = Cdate("29-12-2003")

Function weekNr (dtmDate)  ' Week Of Year
    weekNr = DatePart("ww", dtmDate, vbMonday, vbFirstFourDays)
    If weekNr > 52 Then
        If DatePart("ww", dtmDate + 7 , vbMonday, vbFirstFourDays) = 2 Then weekNr = 1
    End If
End Function

Response.Write weekNr (tmpDate)
%>
Avatar billede bugger Nybegynder
04. januar 2004 - 13:43 #5
Tak for hjælpen.
Ja OK -det er rart at få at vide at det ikke er mig der er fuldstændig blæst i knuppen :-)
However så er der vel ikke rigtig nogen løsning til mit problem idet jeg jo i db udtrækket laver :
DatePart('ww',dato,2,0) AS ugenr
i SQL strengen og ikke kan begynde at lave "if..then" der.

Bugger
Avatar billede wilweb Nybegynder
04. januar 2004 - 14:09 #6
ikke som jeg kender til:>
Avatar billede erikjacobsen Ekspert
04. januar 2004 - 16:37 #7
Du kan lave det i ASP efterfølgende. Udtræk blot dato, og lave beregningen
som anført i linket. Det er klippe-klistre, hvis jeg husker korrekt.
Avatar billede bugger Nybegynder
04. januar 2004 - 17:41 #8
Til Erik
Det kan jeg nu ikke idet jeg laver en objRs.filter
objRs.filter= "ugenr = '" & i & "'"
,men tak for foreslaget.

Er der nogen af jer der interesserer jer for points, vil jeg gerne donere dem til de gode svarere, ellers lukker jeg selv spørgsmålet.
/bug
Avatar billede wilweb Nybegynder
04. januar 2004 - 18:03 #9
Jeg skal ikke have nogle point, da jeg blot vist hvad erik svarede på.
Avatar billede erikjacobsen Ekspert
04. januar 2004 - 18:05 #10
Så kan du lave det med en if-sætning. Trist man skal reparere på
en så banal fejl, som Microsoft ikke af antydning af interesse i at klare.
Avatar billede mikl-dk Nybegynder
04. januar 2004 - 18:32 #11
Ja! Det er lidt mærkeligt, at de ikke tager den smule tid det tager at rette. De kan jo bare sende fejlrettelsen ud med nogle af alle de andre rettelser, de udsender :-)
Avatar billede erikjacobsen Ekspert
04. januar 2004 - 18:51 #12
Ja, deres nye motto må være: "Hellere sikkert end korrekt" ;)

Bedre end at lave udvælgelsen efter udtrækket (med filter eller if), er at
omregne den/de ønskede uge/r til de korrekte datoer, og tage dem
med i forespørgslen.
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