Hai la necessità di controllare se una data è compresa tra altre due date?
Visto che non esiste nessuna funzione ASP per fare ciò eccone una fatta in casa!
<%
function checkZerosDate(num)
    if len(num)=1 then
        checkZerosDate= "0" & num
    else
        checkZerosDate=num
    end if
end function
Function dateBetween(data1,data2,data)
    dim ndata1,ndata2,ndata
   
    'controllo che siano date
    if isdate(data1) and isdate(data2) and isdate(data) then
        ndata1=year(data1) & checkZerosDate(month(data1)) & checkZerosDate(day(data1))
        ndata2=year(data2) & checkZerosDate(month(data2)) & checkZerosDate(day(data2))
        ndata=year(data) & checkZerosDate(month(data)) & checkZerosDate(day(data))
        if (ndata1<=ndata) and (ndata<=ndata2) then
            dateBetween=true
        else
            dateBetween=false
        end if
     else
         ' se non sono date restituisco falso
         dateBetween=false
    end if
end function
%>
Come puoi notare la funzione principale è "dateBetween" alla quale bisogna passare come parametri:
- data1 :  data di inizio intervallo
- data2 : data di fine intervallo
- data : data da testare
La funzione restituirà il valore booleano True se data è compresa tra data1 e data2 oppure False se non lo è.
Per funzionare questa funzione si deve appoggiare alla funzione checkZerosDate che non fa altro che formattare i valori a una cifra del giorno/mese in uno a due cifre!
Come sempre non può mancare lo zippo con lo script e un esempio!
Stop! :D
 
 
Nessun commento:
Posta un commento