74 messaggi dal 24 novembre 2001
Buona sera e buona domenica a tutti,
Sto impazzendo con le date:
devo ricavare il numero di settimane che fanno parte del mese in corso e sapere da quale giorno parte.
Mi spiego meglio:
Febbraio, sono quattro settimane di cui la prima inizia il 03/02/2003.
qualcuno poterbbe suggerirmi un modo per arrivare a fare ciò?
io so che con datepart("ww",date()) so in quale settimana dell' anno mi trovo, ma poi nn riesco ad andare avanti.....
grazie!
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao, prova questo script:

<%
inizio_mese = CDate("01/02/2003")
fine_mese = DateAdd("d",-1,"01/03/2003")
while WeekDay(inizio_mese) <> 2
inizio_mese = DateAdd("d",1,inizio_mese)
wend
Response.write "La settimana inizia il " & inizio_mese & "<br>"
settimane = Int((Day(fine_mese) - Day(inizio_mese))/7)+1
Response.write "Questo mese ha " & settimane & " settimane"
%>

la prima parte determina in che giorno del mese capita il primo lunedi. Nel caso di febbraio come hai detto tu, il giorno è il 3/2/2003.
La funzione weekday restituisce un numero intero a seconda del giorno della settimana: da 1 (domenica) a 7 (sabato).
Per determinare il numero di settimane devi quindi fare ((28 - 3)/7)+1
Cioè i giorni del mese meno il numero del primo lunedi fratto 7.
Se sostituisci i valori delle variabili inizio_mese e fine_mese con:

inizio_mese = CDate("01/03/2003")
fine_mese = DateAdd("d",-1,"01/04/2003")

vedrai che ti da come risultato 5 settimane per il mese di marzo

Enjoy learning and just keep making
74 messaggi dal 24 novembre 2001
Altro che cena.....
Qui ci vuole vitto e alloggio per un mese.......
Sinceramente non sarei mai arrivato a calcolare il numero di settimane in un mese......
Grazie mille brightsoul veramente!!!!
Dovrò lavorarci un attimo solo per fare in modo che serva ai miei scopi ma il più è fatto.
Potrò mai ricompensarti come meriti?

74 messaggi dal 24 novembre 2001
<%
giorno = 01
meseincorso = month(date())
annoincorso = year(date())
inizio_mese = CDate(giorno&"/"&meseincorso&"/"&annoincorso)

'inizio_mese = CDate("01/04/2003")
'fine_mese = DateAdd("d",-1,"01/05/2003")

fm = DateAdd("m",1,inizio_mese)
fine_mese = DateAdd("d",-1,fm)

while WeekDay(inizio_mese) <> 2
inizio_mese = DateAdd("d",1,inizio_mese)
wend
Response.write "La settimana inizia il " & inizio_mese & "<br>"
settimane = Int((Day(fine_mese) - Day(inizio_mese))/7)+1
Response.write "Questo mese ha " & settimane & " settimane"

GapTraOggieLunedi = weekday(inizio_mese)-2

lunedi=inizio_mese-GapTraOggieLunedi
domenica = lunedi+6
'response.write ("OGGI= " & date & "<br>LUNEDI= " & lunedi & "<br>DOMENICA=" & domenica)
For I = 1 to settimane
if I = 1 Then
lunedi = lunedi
domenica = domenica
'response.write ("La " & I & "° settimana<br>LUNEDI= " & lunedi & "<br>DOMENICA=" & domenica)
else
lunedi = DateAdd("d",7,lunedi)
domenica = DateAdd("d",7,domenica)
'response.write ("La "&I&"° settimana<br>LUNEDI= " & lunedi & "<br>DOMENICA=" & domenica)
end if
response.write ("<br>La "&I&"° settimana<br>LUNEDI= " & lunedi & "<br>DOMENICA=" & domenica)
next
%>

questo è il codice come l'ho modificato per i miei scopi ( magari a qualcun altro può servire)
Volevo chiederti un altra cosa posso eseguire una select chiedendo di sommare il contenuto dedi campi value?
(credo che la select che faccia la somma si può fare l'ho letto su un libro di sql, ma siccome non è un buon libro accenna è basta, potresti postarmi la sintassi?)
grazie
11.886 messaggi dal 09 febbraio 2002
Contributi
Non sono molto ferrato nelle query, di solito procedo per tentativi... comunque a naso direi questo:

"SELECT SUM(campo_da_sommare) AS somma FROM tabella GROUP BY campo_da_sommare"

se poi fai:
Response.write rs("somma")
ti dovrebbe scrivere la somma (in teoria)

Enjoy learning and just keep making
74 messaggi dal 24 novembre 2001
Ciao brightsoul , ho trovato la query sul forum in un vecchio tread ora la provo.....
grazie ancora e buona serata

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.