Jag försöker få fram datum från en databas
problemet är att i databasen bara har vilken vecka och vilken vecko dag det är, kanm jag från vecka nr och vilken vecko dag få fram datum?
Datum
6 svar · 521 visningar · startad av nille99
Jag kom på det själv
<% Function ListDate(Dyear) %>
<% Datum1 = Cdate(Dyear & "-01-01") %>
<% Datum2 = Cdate(Dyear & "-12-31") %>
<% Do While Datum1 <= Datum2 %>
<% if DatePart("ww", Datum1) = 7 and WeekDay(Datum1) = 7 Then %>
<%=Datum1%><BR>
<% End If %>
<% Datum1 = DateAdd("d",1,Datum1) %>
<% Loop %>
<% End Function %>
<% ListDate(Year(Date)) %>
Det är väldigt onödigt att ha kontext-switchar runt varje rad. Svårt att läsa blir det också.
I övrigt: Använd [kod]-taggar och funktionen "Acceptera som slutgiltigt svar".
Som @nders skrev onödigt... sen har du Response.Write i din Funktion? (=) Då hade jag antingen skrivit:
'' Om Du vill ha den som en funktion ''
Function GetWeek(dYear)
Dim Date1
Date1 = Cdate(Dyear & "-01-01")
For i = 1 to DateDiff("d",Date1,dYear & "-12-31")
If DatePart("ww",Date1) = 7 And Weekday(Date1) = 7 Then
GetWeek = Date1 & "<BR>"
Exit For
End If
Date1 = DateAdd("d",1,date1)
Next
End Function
Response.Write ListDate(Year(Date())
'Eller spara den i en Variabel:
Dim dTheDate
dTheDate = ListDate(Year(Date()))
'' Eller Sub
Sub GetWeek(dYear)
Dim Date1
Date1 = Cdate(Dyear & "-01-01")
For i = 1 to DateDiff("d",Date1,dYear & "-12-31")
If DatePart("ww",Date1) = 7 And Weekday(Date1) = 7 Then
Response.Write Date1 & "<BR>"
Exit For
End If
Date1 = DateAdd("d",1,date1)
Next
End Sub
ListDate Year(Date)
En funktion Retunera något medans en Sub körs direkt utan att retunera någon kod.
Som @nders säger. Kör så här istället:
<%
Function ListDate(Dyear)
Datum1 = Cdate(Dyear & "-01-01")
Datum2 = Cdate(Dyear & "-12-31")
Do While Datum1 <= Datum2
if DatePart("ww", Datum1) = 7 and WeekDay(Datum1) = 7 Then
=Datum1<BR>
End If
Datum1 = DateAdd("d",1,Datum1)
Loop
End Function
ListDate(Year(Date))
%>
Nej Oskars.. = inne i en funktion går inte ;) ersätt den med en Response.Write och ha den som en Sub.
gah, kopierade ju bara hans :D ville ta bort alla <% %> ;)