Comparteix a través de


Ara, avui, IsToday, UTCNow, UTCToday, IsUTCToday funciona

S'aplica a: Aplicacions del llenç Fluxos d'escriptori Columnes Dataverse de fórmules Aplicacions Power Platform basades en models CLI

Torna la data i l'hora actuals i prova si un valor de data i hora és el d'avui.

Nota

Les ordres PAC CLI pac power-fx no admeten les funcions UTCNow, UTCToday iIsUTCToday .

Descripció

La funció Now retorna la data i l'hora actuals com a valor de data i hora.

La funció Today retorna la data actual com a valor de data i hora. La part del valor corresponen a l'hora és la mitjanit. Today té el mateix valor al llarg d'un dia, des de la mitjanit d'avui fins a la mitjanit de demà.

La funció IsToday prova si un valor de data i hora es troba entre la mitjanit d'avui i la mitjanit de demà. Aquesta funció retorna un valor booleà (true o false).

Les funcions Now, Today i IsToday funcionen amb l'hora local de l'usuari actual.

Les funcions UTCNow, UTCToday i IsUTCToday són les mateixes que les seves homòlogues no UTC, però funcionen amb valors independents de la zona horària i utilitzen el temps universal coordinat (UTC).

Nota

  • UTCNow, UTCToday i IsUTCToday només estan disponibles a les columnes de fórmula del Microsoft Dataverse for Teams i només per als camps i els valors independents del temps.
  • Now, Todayi IsToday no estan disponibles a les columnes de fórmula del Dataverse for Teams com a valoracions fetes sense el coneixement del fus horari local de l'usuari actual.
    Més informació: Treballar amb columnes de taula de fórmula al Dataverse for Teams

Vegeu els Data, Hora i DateTime a la documentació dels tipus de dades i treballar amb dates i hores per obtenir més informació.

Funcions volàtils

Now, Today, UTCNow i UTCToday són funcions volàtils. Aquestes funcions retornen un valor diferent per a cada avaluació.

Quan s'utilitza en una fórmula de flux de dades, una funció volàtil només retornarà un valor diferent si la fórmula en què apareix es torna a avaluar. Si no es canvia res més a la fórmula, tindrà el mateix valor durant l'execució de l'aplicació.

Per exemple, un control d'etiqueta amb Label1.Text = Now() no canviarà mentre l'aplicació estigui activa. Només s'obtindrà un valor nou si es tanca l'aplicació i es torna a obrir.

La funció es tornarà a avalua si forma part d'una fórmula on s'ha canviat una altra cosa. Per exemple, si canviem l'exemple per implicar un control lliscant amb Label1.Text = DateAdd(Now(), Slider1.Value, Minuts), l'hora actual es recupera cada vegada que el valor del control lliscant canvia i es torna a avaluar la propietat de text de l'etiqueta.

Quan s'utilitzen en una fórmula de comportament, les funcions volàtils s'avaluaran cada vegada que s'avaluï la fórmula de comportament. Vegeu-ne un exemple a continuació.

Sintaxi

Utilitzar l'hora local de l'usuari

Now()

Today()

IsToday(DateTime)

  • DateTime: obligatori. Valor de data i hora que es provarà.

Ús del temps universal coordinat (UTC)

UTCNow()

UTCToday()

IsUTCToday( TimeZoneIndependentTime )

  • TimeZoneIndependentDateTime: obligatori. El valor de data i hora independent de la zona horària per provar.

Exemples

Per als exemples d'aquesta secció, l'hora actual és les 20:58 de l'11 de juliol de 2021 al fus horari del Pacífic (UTC-8) i la llengua és en-us.

Fórmula Descripció Resultat
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) Recupera la data i l'hora actuals en el fus horari de l'usuari i la mostra com una cadena. "07/11/2021 20:58:00"
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) Recupera només la data actual, deixa la part del valor corresponent a l'hora com a mitjanit i ho mostra com a cadena. "07/12/2021 00:00:00"
IsToday(Now()) Prova si l'hora i la data actuals es troben entre la mitjanit d'avui i la mitjanit de demà. true
IsToday(Today()) Prova si la data actual es troba entre la mitjanit d'avui i la mitjanit de demà. true
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Recupera la data i l'hora actuals, afegeix 12 dies al resultat i la mostra com una cadena. "07/23/2021 20:58:00"
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Recupera la data actual, afegeix 12 dies al resultat i la mostra com una cadena. "07/23/2021 00:00:00"
IsToday(DateAdd(Now(), 12)) Prova si l'hora i la data actuals, més 12 dies, es troben entre la mitjanit d'avui i la mitjanit de demà. false
IsToday(DateAdd(Today(), 12)) Prova si l'hora actual, més 12 dies, es troba entre la mitjanit d'avui i la mitjanit de demà. fals
Hour( UTCNow() ) Recupera la data i l'hora actuals en UTC i només extreu l'hora, que és de 8 hores més que l'hora local. 4
Day( UTCToday() ) Recupera la data actual només en UTC i extreu el dia, que és 1 dia abans de l'hora local. 12
IsUTCToday( UTCNow() ) Prova si l'hora i la data actuals es troben entre la mitjanit d'avui i la mitjanit de demà, tot en l'hora UTC. true
IsUTCToday( UTCToday() ) Prova si l'hora actual es troba entre la mitjanit d'avui i la mitjanit de demà, tot en l'hora UTC. true

Mostrar un rellotge que s'actualitza en temps real

  1. Afegiu un control Temporitzador, definiu-ne la propietat Duration a 1000 i la propietat Repeat a true.

    El temporitzador s'executarà durant un segon, es tornarà a iniciar automàticament i continuarà aquest patró.

  2. Definiu la propietat OnTimerEnd del control en aquesta fórmula:

    Set(CurrentTime, Now())

    Sempre que el temporitzador s'iniciï (després de cada segon), aquesta fórmula defineix la variable global CurrentTime al valor actual de la funció Now.

    Pantalla que conté un control de temporitzador amb la fórmula OnTimerEnd = Set(CurrentTime, Now())

  3. Afegiu un control Etiqueta i definiu-ne la propietat Text en aquesta fórmula:

    Text(CurrentTime, LongTime24)

    Utilitzeu la funció Text per donar format a la data i l'hora com vulgueu. O bé, definiu aquesta propietat com a CurrentTime per mostrar les hores i els minuts, però no els segons.

    Pantalla que conté un control d'etiquetes amb la propietat Text definit com a Text(CurrentTime, LongTime24)

  4. Per obtenir una visualització prèvia de l'aplicació, premeu F5 i, a continuació, toqueu el temporitzador o feu-hi clic per iniciar-lo.

    L'etiqueta mostra contínuament l'hora actual fins als segons.

    Quatre pantalles que mostren quatre valors de temps (13:50:22, 13:50:45, 13:51:03 i 13:51:25)

  5. Definiu la propietat AutoStart del temporitzador com a true i la propietat Visible com a false.

    El temporitzador és invisible i s'inicia automàticament.

  6. Definiu la propietat OnStart de la pantalla per tal que la variable CurrentTime tingui un valor vàlid, com en aquest exemple:

    Set(CurrentTime, Now())

    L'etiqueta apareix tan bon punt s'inicia l'aplicació (abans que el temporitzador s'executi durant tot un segon).