Deli putem


DateAdd, DateDiffi TimeZoneOffset funkcije

Funkcije Odnosi se na
DateAdd
DateDiff
Canvas aplikacije Copilot Studio Desktop teku Kolone Dataverse formula kolone aplikacija zasnovane na modelu Power Platform CLI Dataverse funkcije Power Pages
TimeZoneOffset Canvas aplikacije Copilot Studio Desktop teku aplikacije zasnovane na modelima Power Platform CLI Dataverse funkcije Power Pages
Function Odnosi se na
DateAdd
DateDiff
TimeZoneOffset

Dodaje ili pronalazi razliku u vrednostima datum/vreme i konvertuje između lokalnog vremena i UTC.

Opis

Funkcija DateAdd dodaje broj jedinica vrednosti datuma/vremena. Rezultat je nova vrednost datum/vreme. Takođe možete oduzeti broj jedinica od vrednosti datum/vreme tako što ćete navesti negativnu vrednost.

Funkcija DateDiff daje razliku između dve vrednosti datuma/vremena. Rezultat je ceo broj jedinica.

Za obe funkcije, jedinice mogu biti TimeUnit.Milliseconds, TimeUnit.Seconds , TimeUnit.Minutes , TimeUnit.Hours , TimeUnit.Dais , TimeUnit.Months , TimeUnit.Quarters iliTimeUnit.Years . Po defaultu, obe funkcije koriste TimeUnit.Dais kao jedinice.

Funkcija TimeZoneOffset vraća broj minuta između lokalnog vremena korisnika i UTC-a (koordinisano univerzalno vreme).

Možete da koristite DateAdd sa konvertovanjem TimeZoneOffset između lokalnog vremena korisnika i UTC -a (Koordinisano univerzalno vreme). Dodavanje TimeZoneOffset će konvertovati lokalno vreme u UTC i oduzimanje (dodavanje negativnog) konvertuje se iz UTC-a u lokalno vreme.

Takođe pogledajte Datum , vreme i DatumVreme tipovi podataka i rad sa datumima i vremenima za više informacija.

Sintaksa

DateAdd( DateTime, Sabiranje [, Jedinice ] )

  • DateTime - Obavezno. Vrednost datuma/vremena na kojoj se radi.
  • Dodatak - Obavezno. Broj, u jedinicama, za dodavanje u DateTime.
  • Jedinice - Opciono. Tip jedinica koje treba dodati: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Dais, TimeUnit.Months, TimeUnit.Quarters ili TimeUnit.Years. Ako nije navedeno, koriste se TimeUnit.Dais .

DateDiff( StartDateTime, EndDateTime [, Jedinice ] )

  • StartDateTime - Obavezno. Pokretanje vrednosti datum/vreme.
  • EndDateTime - Obavezno. Završavanje vrednosti datum/vreme.
  • Jedinice - Opciono. Tip jedinica za oduzimanje: TimeUnit.Milliseconds, TimeUnit.Seconds, TimeUnit.Minutes, TimeUnit.Hours, TimeUnit.Dais, TimeUnit.Months, TimeUnit.Quarters, ili TimeUnit.Years. Ako nije navedeno, koriste se TimeUnit.Dais .

TimeZoneOffset( [ Datum i vreme ] )

  • DateTime - Opciono. Vrednost datum/vreme za koju se vraća odstupanje. Podrazumevano se koristi trenutni datum/vreme.

Primeri

U svim ovim primerima pretpostavite da su trenutni datum i vreme 15. jul 2013., 13:02.

Jednostavno DateAdd

Formula Opis Rezultat
Text( DateAdd( Now(), 3 ),
"dd-mm-yyyy hh:mm" )
Dodaje se tri dana (podrazumevane jedinice) trenutnom datumu i vremenu. „18. 7. 2013. 13:02“
Text( DateAdd( Now(), 4, TimeUnit.Hours ),
"dd-mm-yyyy hh:mm" )
Dodajte četiri sata trenutnom datumu i vremenu. „15. 7. 2013. 17:02“
Text( DateAdd( Today(), 1, TimeUnit.Months ),
"dd-mm-yyyy hh:mm" )
Dodaje se mesec dana trenutnom datumu, bez vremena kao Danas ne vraća vremensku komponentu. „15. 8. 2013. 00:00“
Text( DateAdd( Now(), -30, TimeUnit.Minutes ),
"dd-mm-yyyy hh:mm" )
Oduzima 30 minuta od trenutnog datuma i vremena. „15. 7. 2013. 12:32“

Jednostavno DateDiff

Formula Opis Rezultat
DateDiff( Now(), DateValue("1/1/2014") ) Vraća razliku između dve jedinice u podrazumevanim jedinicama TimeUnit.Dais 170
DateDiff( Now(), DateValue("1/1/2014"), TimeUnit.Months ) Vraća razliku između dve vrednosti u TimeUnit.Months 6
DateDiff( Now(), Today(), TimeUnit.Minutes ) Vraća razliku samo između trenutnog datuma/vremena i trenutnog datuma (bez vremena) u minutima. Pošto je Now kasnije od Today, rezultat će biti negativan. -782

Razlika datuma sa delimičnim rezultatima

DateDiff Funkcija daje samo ceo broj jedinica koje se oduzimaju, a preciznost je zadata u navedenoj jedinici. Da biste izračunali razliku sa većom preciznošću, koristite manju jedinicu i konvertujte rezultat na odgovarajući način, kao u primerima u nastavku.

Formula Opis Rezultat
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Hours ) Minuti/sekunde se zanemaruju, razlika se zasniva na vremenu do sata. 1
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Minutes )/60 Minuti se koriste u razlici, a rezultat se deli sa 60 da bi se dobila razlika u satima. 0.5
DateDiff( TimeValue("09:45:00"), TimeValue("10:15:36"), TimeUnit.Seconds )/3600 Minuti i sekunde se koriste u razlici, a rezultat se deli sa 3600 da bi se dobila razlika u satima. 0.51

Konvertovanje u UTC

Da biste konvertovali u UTC (koordinisano univerzalno vreme), TimeZoneOffset dodajte dato vreme.

Na primer, zamislite da su trenutni datum i vreme 15. jul 2013. 13:02 po pacifičkom letnjem računanju vremena (PDT, UTC-7). Da biste odredili trenutno vreme u UTC, koristite:

  • DateAdd( Now(), TimeZoneOffset(), TimeUnit.Minutes )

TimeZoneOffset podrazumevano za trenutno vreme, tako da ne morate da mu prenesete argument.

Da biste videli rezultat, koristite funkciju Text sa formatom dd-mm-yyyy hh:mm, koji će vratiti 15-07-2013, 20:02.

Pretvaranje iz UTC

Da biste konvertovali iz UTC-a, TimeZoneOffset oduzmite (tako što ćete dodati negativnu vrednost) za dato vreme.

Na primer, zamislite UTC datum i vreme 15. jul 2013. 20:02 se čuva u promenljivoj pod nazivom StartTime. Da biste podesili vreme za vremensku zonu korisnika, koristite:

  • DateAdd( StartTime, −TimeZoneOffset( StartTime ), TimeUnit.Minutes )

Obratite paћnje na negativan znak pre TimeZoneOffset da biste oduzimali pomak umesto da biste ga dodali.

Da biste videli rezultat, koristite funkciju Text sa formatom dd-mm-yyyy hh:mm, što će rezultirati u 15-07-2013, 13:02 ako ste u pacifičkom letnjem/zimskom računanju vremena.