2 messaggi dal 12 marzo 2002
Salve a tutti
Il server sul quale gira la mia applicazione web di punto in bianco ha deciso di spararmi fuori tutte date non più in formato europeo (GG/MM/AAAA) ma bensì in formato americano (MM/GG/AAAA). Un bel casino per i miei archivi Access 97...
Ho deciso quindi di gestire le date utilizzando 3 distinti campi numerici (es. ggNascita mmNascita e aaNascita)

Il problema è che non riesco più a eseguire dei confronti tra date o gli ordinamenti cronologici. (<, >, Datediff, e altre funzioni del genere)

Qualcuno ha un'idea sulle funzioni da utilizzare per trasformare i 3 campi menzionati in valori di data riutilizzabili come prima?

p.s. Ho dato un'occhiata ai post precedenti, ma non ho visto nulla sull'argomento.

Grazie a tutti

99 messaggi dal 26 ottobre 2001
Secondo me il metodo migliore per gestire le date è quello di creare un numero. Mi spiego meglio con un esempio:

Se hai questa data 9 luglio del 2002 la trasformi in AAAAMMGG ottenendo 20020709
E' importantissimo che metti lo 0 davanti ai giorni e ai mesi da 1 a 9.

In questo modo avrai sempre delle date ordinate.
Potrai poi in qualunque momento con dei smplici Left Mid e Right scomporre la data per visualizzarla nel modo che preferisci.

Alessio

512 messaggi dal 30 maggio 2002
Riformatta il formato dopo che leggi il record:

' Formatta le date per il sistema italiano
vData = Day(vData) & "/" & Month(vData) & "/" & Year(vData)

e riformattalo al momento che risalvi il record:

' Formatta le date per il sistema inglese
vData = Month(vData) & "/" & Day(vData) & "/" & Year(vData)


se sapessero cosa penso sarei già morto...
2 messaggi dal 12 marzo 2002
Grazie a tutti.

Ho scoperto che posso risolvere il problema passando i 3 valori distinti delle 2 date da confrontare (gg, mm, aaaa) e passarli alla funzione DateSerial(aaaa,mm,gg) in modo da ottenere 2 variabili uniformi con cui posso lavorare come prima.
Adesso il server può anche restituirmi le date in turco, ma posso stare tranquillo...

'giorni mancanti ala scadenza
<%=DateDiff("d",dateserial(year(date()),month(date()), day(date())), dateserial(aaScadenza,mmScadenza,ggScadenza)) %>

'confronto fra date
<%
If dateserial(year(date()),month(date()), day(date())) < dateserial(aaNascita,mmNascita,ggNascita) Then
response.write("devi ancora nascere !?")
End If
%>

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.