Del via


Funksjonene for Now, Today, IsToday, UTCNow, UTCToday, IsUTCToday

Gjelder: Lerretsapper Skrivbordsflyt Dataverse-formelkolonner Modelldrevne apper Power Platform CLI

Returnerer gjeldende dato og klokkeslett, og tester om en dato/klokkeslett-verdi er i dag.

Obs!

PAC CLI pac power-fx-kommandoene støtter ikke UTCNow-, UTCToday- og IsUTCToday-funksjonene.

Description

Now-funksjonen returnerer gjeldende dato og klokkeslett som en dato/klokkeslett-verdi.

Today-funksjonen returnerer gjeldende dato og klokkeslett som en dato/klokkeslett-verdi. Klokkeslettdelen er midnatt. Today har samme verdi hele døgnet, fra midnatt i dag til midnatt i morgen.

IsToday-funksjonen tester om en dato/klokkeslett-verdi er mellom midnatt i dag og midnatt i morgen. Denne funksjonen returnerer en boolsk (sann eller usann) verdi.

Funksjonenen Now, Today og IsToday fungerer sammen med lokal tid for gjeldende bruker.

Funksjonene UTCNow, UTCToday og IsUTCToday er de samme som ikke-UTC-motpartene, men fungerer med tidssoneuavhengige verdier og bruker UTC (Coordinated Universal Time).

Obs!

  • UTCNow, UTCToday og IsUTCToday er bare tilgjengelige i Microsoft Dataverse for Teams-formelkolonner og bare for tidsuavhengige felt og verdier.
  • Now, Today og IsToday er ikke tilgjengelig i Dataverse for Teams-formelkolonner fordi evalueringer utføres uten at det er kjennskap til gjeldende brukers lokale tidssone.
    Mer informasjon: Arbeid med formeltabellkolonner i Dataverse for Teams

Se Date, Time, and DateTime i datatypedokumentasjon og arbeid med datoer og klokkeslett hvis du vil ha mer informasjon.

Flyktige funksjoner

Now, Today, UTCNow og UTCToday er flyktige funksjoner. Disse funksjonene returnerer en annen verdi for hver evaluering.

En flyktig funksjon returnerer en annen verdi når den brukes i en formel for dataflyt, hvis formelen den viser, ser ut til å være evaluert på nytt. Hvis ingenting annet endres i formelen, vil den ha samme verdi i hele kjøringen av appen.

En etikett med Label1.Text = Now() vil for eksempel ikke endres mens appen er aktiv. Å bare lukke og åpne appen vil resultere i en ny verdi.

Funksjonen vil evalueres på nytt hvis den er en del av en formel der noe annet er endret. Hvis vi for eksempel endrer eksemplet til å omfatte en glidebryter med Label1.Text = DateAdd(Now(), Slider1.Value, minutter), blir gjeldende klokkeslett hentet hver gang verdien for glidebryteren endres og etikettens tekstegenskapen evalueres på nytt.

Når de brukes i en virkemåteformel, blir flyktige funksjoner evaluert hver gang virkemåteformelen evalueres. Nedenfor finner du et eksempel.

Syntaks

Bruker brukerens lokale tid

Now()

Today()

IsToday( DateTime )

  • DateTime - obligatorisk. Dato/klokkeslett-verdien som skal testes.

Bruker Coordinated Universal Time (UTC)

UTCNow()

UTCToday()

IsUTCToday( TimeZoneIndependentTime )

  • TimeZoneIndependentDateTime - Obligatorisk. Verdien for dato/klokkeslett i tidssonen som skal testes.

Eksempler

For eksemplene i denne delen er gjeldende klokkeslett 8:58 PM den 11. juli 2021 i UTC-8-tidssonen, og språket er en-us.

Formel Beskrivelse Resultat
Text( Now(), "mm/dd/yyyy hh:mm:ss" ) Henter gjeldende dato og klokkeslett i brukerens tidssone og viser det som en streng. "07/11/2021 20:58:00"
Text( Today(), "mm/dd/yyyy hh:mm:ss" ) Henter bare gjeldende dato, lar klokkeslettdelen stå som midnatt, og viser dette som en streng. "07/12/2021 00:00:00"
IsToday( Now() ) Tester om gjeldende dato og klokkeslett er mellom midnatt i dag og midnatt i morgen. true
IsToday( Today() ) Tester om gjeldende dato er mellom midnatt i dag og midnatt i morgen. true
Text( DateAdd( Now(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Henter gjeldende dato og klokkeslett, legger 12 dager til resultatet, og viser det som en streng. "07/23/2021 20:58:00"
Text( DateAdd( Today(), 12 ), "mm/dd/yyyy hh:mm:ss" ) Henter gjeldende dato, legger 12 dager til resultatet, og viser det som en streng. "07/23/2021 00:00:00"
IsToday( DateAdd( Now(), 12 ) ) Tester om gjeldende dato og klokkeslett, pluss 12 dager, er mellom midnatt i dag og midnatt i morgen. false
IsToday( DateAdd( Today(), 12 ) ) Tester om gjeldende dato, pluss 12 dager, er mellom midnatt i dag og midnatt i morgen. usann
Hour( UTCNow() ) Henter gjeldende dato og klokkeslett i UTC og trekker ut bare timen, som er 8 timer før lokal tid. 4
Day( UTCToday() ) Henter gjeldende dato bare i UTC og trekker ut bare dagen, som er 1 dag før lokal tid. 12
IsUTCToday( UTCNow() ) Tester om gjeldende dato og klokkeslett er mellom midnatt i dag og midnatt i morgen, alle i UTC-tid. true
IsUTCToday( UTCToday() ) Tester om gjeldende dato er mellom midnatt i dag og midnatt i morgen, alle i UTC-tid. true

Vis en klokke som oppdateres i sanntid

  1. Legg til en Timer-kontroll, angi egenskapen for Duration til 1000, og angi deretter Repeat-egenskapen til sann.

    Tidtakeren kjøres i ett sekund, startes automatisk på nytt og fortsetter dette mønstret.

  2. Angi egenskapen for OnTimerEnd til denne formelen:

    Set( CurrentTime, Now() )

    Når tidtakeren starter på nytt (etter et sekund), angir formelen den globale variabelen CurrentTime til gjeldende verdi for Now-funksjonen.

    En skjerm som inneholder en tidtakerkontroll med formelen OnTimerEnd = (CurrentTime, Now()).

  3. Legg til en Label-kontroll, og angi Text-egenskapen til denne formelen:

    Text( CurrentTime, LongTime24 )

    Bruk Text-funksjonen til å formatere datoen og klokkeslettet slik du ønsker, eller angi denne egenskapen til bare CurrentTime for å vise timer og minutter, men ikke sekunder.

    En skjerm som viser en etikett med Text-egenskapen satt til Text( CurrentTime, LongTime24).

  4. Forhåndsvis appen ved å trykke på F5, og start deretter tidtakeren ved å klikke eller trykke på den.

    Etiketten viser kontinuerlig det gjeldende klokkeslettet, helt ned til sekundet.

    Fire skjermer som viser fire tidsverdier (13:50:22, 13:50:45, 13:51:03 og 13:51:25).

  5. Angi tidtakerens egenskap for AutoStart til SANN og Visible-egenskapen til USANN.

    Tidtakeren er usynlig og starter automatisk.

  6. Angi skjermens OnStart-egenskap slik at variabelen CurrentTime har en gyldig verdi, som i dette eksemplet:

    Set(CurrentTime, Now())

    Etiketten vises så snart appen starter (før tidtakeren kjører et fullstendig sekund).