Autore Topic: [RISOLTO] Problemi con la data  (Letto 373 volte)

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.728
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
[RISOLTO] Problemi con la data
« il: 22 Dicembre 2016, 13:56:19 »
 :ciao:
"Date" dovrebbe restituire la parte di sola "data" di "now".
se uso:
 
Codice: [Seleziona]
 PRINT DATA(NOW)
mi aspetterei che so  01.12.2016, invece mi restituisce  01.12.2016 00:00:00. :-\
Baco?
 :ciao:
« Ultima modifica: 22 Dicembre 2016, 16:54:56 da kicco »
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Problemi con la data
« Risposta #1 il: 22 Dicembre 2016, 14:17:57 »
Era una cosa che avevo già chiesto nella ML comunque fai così e non hai problemi:
Codice: [Seleziona]
Print Format(Now, "dd/mm/yyyy")

 :ciao: :ciao: :ciao:
« Ultima modifica: 22 Dicembre 2016, 14:22:41 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.720
  • Ne mors quidem nos iunget
    • Mostra profilo
Re:Problemi con la data
« Risposta #2 il: 22 Dicembre 2016, 14:56:13 »
Seppur più semplice e più utilizzato il suggerimento di Gianluigi, per curiosità segnalo anche quest'altra possibilità:

Codice: [Seleziona]
Public Sub Main()

' Nel primo argomento della funzione "Scan()" convertiamo il ritorno della funzione "Now" in una stringa.
' Poiché questa è composta da un primo gruppo di caratteri, da uno spazio e da un secondo gruppo di caratteri,
' nel secondo argomento della funzione "Scan()" riproduciamo la struttura della stringa e prendiamo il primo elemento
' del array di tipo "String[ ]" ritornato, ossia quello che contiene il gruppo di caratteri che rappresenta la data (e non l'orario):'
  Print Scan(Str(Now), "* *")[0]

End



« Ultima modifica: 22 Dicembre 2016, 16:30:41 da vuott »
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.728
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:Problemi con la data
« Risposta #3 il: 22 Dicembre 2016, 16:50:01 »
 :ciao:
Citazione
Era una cosa che avevo già chiesto nella ML
non lo sapevo!
Citazione
fai così
Codice: [Seleziona]
Print Format(Now, "dd/mm/yyyy")
...infatti ho dovuto fare così!

Codice: [Seleziona]
  Print Scan(Str(Now), "* *")[0]
interessante!!!
 :ciao: e grazie ad entrambi!
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Problemi con la data
« Risposta #4 il: 23 Dicembre 2016, 00:28:51 »
:ciao:
Citazione
Era una cosa che avevo già chiesto nella ML
non lo sapevo!


Finalmente sono riuscito a recuperare la discussione in cui Benoit Minisini e Jussi Lahtinen mi spiegano un po di cose circa l'argomento.

 :ciao: :ciao: :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline kicco

  • Senatore Gambero
  • ******
  • Post: 1.728
  • So dove andare, seguitemi, ci perderemo insieme!
    • Mostra profilo
Re:[RISOLTO] Problemi con la data
« Risposta #5 il: 23 Dicembre 2016, 10:38:18 »
Citazione
... Benoit Minisini e Jussi Lahtinen mi spiegano un po di cose circa l'argomento.
ma Minisini non risponde al quesito del perchè con DATE venga espressa la parte oraria azzerata!
 :-\
Chi ha paura muore ogni giorno, chi non ha paura muore una volta sola. (Paolo Borsellino)

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:[RISOLTO] Problemi con la data
« Risposta #6 il: 23 Dicembre 2016, 10:48:00 »
Non direttamente, ma dice che un conto è ciò che si ottiene e l'altro è ciò che si vuole mostrare.

Per chiosare direi che se devi fare un programma per il tuo ufficio italiano puoi usare Format mentre se la data deve andarsi a localizzare in base al luogo in cui viene usato il programma credo che l'unica soluzione sia quella prospettataci da Vuott e cioè Scan.

 :ciao: :ciao:
« Ultima modifica: 23 Dicembre 2016, 11:45:44 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:[RISOLTO] Problemi con la data
« Risposta #7 il: 21 Gennaio 2017, 23:41:12 »
Si è aggiunto un nuovo capitolo nella strada verso la comprensione delle date.
Ora noi in Europa, Inghilterra e dintorni esclusi, abbiamo UTC+1 cioè siamo un ora avanti rispetto a UTC zero, questo comporta che essendo Date posizionato sull'ora 00:00:00 come si può appunto vedere dal tuo quesito, se si utilizzano le stringhe, la funzione praticamente ritorna sempre il giorno prima alle ore 23, in quanto Gambas ritorna il dato UTC.

Lo si constata facilmente con questa prova empirica:
Codice: [Seleziona]
Public Sub Main()
 
  Dim d1 As Date
 
  d1 = Date("6/15/2008")
  Print Format$(d1, "dd mm yyyy")
  d1 = Date("6/15/2008 01:00:00")
  Print Format$(d1, "dd mm yyyy")
 
End

 :ciao:
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro