8 messaggi dal 16 ottobre 2002
Ciao a tutti,
qualcuno di voi sa se darmi qualche consiglio su come riuscire a calcolare e visualizzare, in asp, i giorni lavorativi anno per anno?

Grazie Mille!!!!
11.886 messaggi dal 09 febbraio 2002
Contributi
puoi fare un ciclo che vada dal primo gennaio al 31 dicemebre dell'anno in questione

<%
data = Cdate("01/01/2006")
while Year(data)=2006

'controllo che il giorno della settimana sia compreso tra lunedi e venerdi.
if Weekday(data, 2) <= 5 then
'con la mia funzione, controllo che questo giorno non cada tra quelli impostati come festivi
if not Festivo(data) then
Response.Write(FormatDateTime(data, vbLongDate) & "<br>" & vbCrLf)
end if
end if

'aggiungo un giorno alla data
data = DateAdd("d", 1, data)
wend

Function Festivo(data)
Festivo = false
Select case Day(data) & "/" & Month(data)
Case "25/12"
'natale
Festivo = true
Case "1/5"
'primo maggio
Festivo = true
Case "2/6"
'2 giugno
Festivo = true
'e così via
End Select

End Function

%>


la cosa più noiosa da fare è popolare la funzione Festivo con tutti i casi di festività. Il problema sarà calcolare le feste mobili, tipo Pasqua. Io ti ho dato lo spunto, completala tu.

Enjoy learning and just keep making
8 messaggi dal 16 ottobre 2002
Grazie, mi è stato molto utile!!!
Ma se dovessi anche gestire un orario di lavoro???
11.886 messaggi dal 09 febbraio 2002
Contributi

Ma se dovessi anche gestire un orario di lavoro???

uhm, in che senso? vuoi elencare le ore lavorative? Beh, è abbastanza facile, ti basta far un ciclo.

Dim i
'scrivo le ore della mattina
for i = 9 to 12
Response.Write(Right("0" & i, 2) & ":00<br>" & vbCrLf)
next
'e quelle del pomeriggio
for i = 13 to 17
Response.Write(Right("0" & i, 2) & ":00<br>" & vbCrLf)
next


Non credo di aver capito se è quello che intendi...

Enjoy learning and just keep making

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.