Funzioni Now, Today e IsToday in Power Apps

Restituisce la data e ora correnti e verifica se un valore di data/ora corrisponde alla data odierna.

Descrizione

La funzione Now restituisce la data e ora correnti come valore di data/ora.

La funzione Today restituisce la data corrente come valore di data/ora. La parte dell'ora corrisponde alla mezzanotte. Today ha lo stesso valore per tutto il giorno, dalla mezzanotte della data odierna alla mezzanotte del giorno successivo.

La funzione IsToday verifica se un valore di data/ora è compreso tra la mezzanotte della data odierna e la mezzanotte del giorno successivo. Restituisce un valore booleano (true o false).

Tutte queste funzioni usano la data/ora locale dell'utente corrente.

Per altre informazioni, vedere Utilizzo di date e ore.

Funzioni volatili

Now e Today sono funzioni volatili. Ogni volta che viene valutata una di queste funzioni restituisce un valore diverso.

Quando viene usata in una formula di flusso di dati, una funzione volatile restituisce un valore diverso solo se viene rivalutata la formula in cui è presente. Se nella formula non viene modificato nessun altro elemento, avrà lo stesso valore in tutta l'esecuzione dell'app.

Ad esempio, un controllo etichetta con Label1.Text = Now() non cambierà mentre l'app è attiva. Solo chiudendo e riaprendo l'app verrà generato un nuovo valore.

La funzione viene rivalutata se fa parte di una formula in cui è stato modificato un altro elemento. Si supponga di voler modificare questo esempio in modo che comporti un controllo Dispositivo di scorrimento con Label1.Text = DateAdd( Now(), Slider1.Value, Minutes ): in questo caso, l'ora corrente viene recuperata ogni volta che viene modificato il valore del dispositivo di scorrimento e viene rivalutata la proprietà del testo dell'etichetta.

Se usate in una formula di comportamento, le funzioni volatili vengono valutate ogni volta che viene valutata la formula di comportamento. Per un esempio, vedere di seguito.

Sintassi

Now()

Today()

IsToday( DateTime )

  • DateTime: obbligatorio. Valore di data/ora da verificare.

Esempi

Per gli esempi in questa sezione, l'ora corrente è 3:59 del mattino del 12 febbraio 2015 e la lingua è en-us.

Formula Descrizione Risultato
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) Recupera la data e l'ora correnti e visualizza il valore come stringa. "02/12/2015 03:59:00"
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) Recupera solo la data corrente, lasciando la parte dell'ora sulla mezzanotte, e visualizza il valore come stringa. "02/12/2015 00:00:00"
IsToday( Now() ) Verifica se la data e ora correnti sono comprese tra la mezzanotte della data odierna e la mezzanotte del giorno successivo. true
IsToday( Today() ) Verifica se la data corrente è compresa tra la mezzanotte della data odierna e la mezzanotte del giorno successivo. true
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Recupera la data e ora correnti, aggiunge 12 giorni al risultato e visualizza il valore ottenuto come stringa. "02/24/2015 03:59:00"
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Recupera la data corrente, aggiunge 12 giorni al risultato e visualizza il valore ottenuto come stringa. "02/24/2015 00:00:00"
IsToday( DateAdd( Now(), 12 ) ) Verifica se la data e ora correnti, più 12 giorni, sono comprese tra la mezzanotte della data odierna e la mezzanotte del giorno successivo. false
IsToday( DateAdd( Today(), 12 ) ) Verifica se la data corrente, più 12 giorni, è compresa tra la mezzanotte della data odierna e la mezzanotte del giorno successivo. false

Visualizzare un orologio che viene aggiornato in tempo reale

  1. Aggiungere un controllo Timer, impostare la relativa proprietà Duration su 1000 e la proprietà Repeat su true.

    Il timer verrà eseguito per un secondo, si riavvierà automaticamente e continuerà tale modello.

  2. Impostare la proprietà OnTimerEnd su questa formula:

    Set( CurrentTime, Now() )

    Ogni volta che viene riavviato il timer (dopo ogni secondo), questa formula imposta la variabile globale CurrentTime sul valore corrente della funzione Now.

    Schermata contenente un controllo timer con la formula OnTimerEnd = Set(CurrentTime, Now())

  3. Aggiungi un controllo Etichetta e impostane la proprietà Text sulla formula seguente:

    Text( CurrentTime, LongTime24 )

    Usare la funzione Text per formattare la data e l'ora come si preferisce o impostare questa proprietà semplicemente su CurrentTime per visualizzare le ore e i minuti ma non i secondi.

    Schermata contenente un controllo etichetta con la proprietà Text impostata su Text( CurrentTime, LongTime24)

  4. Visualizzare in anteprima l'app premendo F5 e quindi avviare il timer facendo clic o toccandolo.

    L'etichetta visualizza continuamente l'ora corrente, con precisione al secondo.

    Quattro schermate con quattro valori di ora (13:50:22, 13:50:45, 13:51:03 e 13:51:25)

  5. Impostare la proprietà AutoStart su true e la relativa proprietà Visible su false.

    Il timer non è visibile e viene avviato automaticamente.

  6. Impostare la proprietà OnStart della schermata in modo che la variabile CurrentTime abbia un valore valido, come nell'esempio seguente:

    Set(CurrentTime, Now())

    L'etichetta viene visualizzata all'avvio dell'app (prima che il timer venga eseguito per un intero secondo).