Funkcije »DateAdd«, »DateDiff« in »TimeZoneOffset« v rešitvi Power Apps

Doda vrednost k vrednosti datuma/časa ali ugotovi razliko v vrednostih datuma/časa ter pretvarja med lokalnim časom in UTC.

Opis

Funkcija DateAdd doda število enot k vrednosti datuma/časa. Rezultat je nova vrednost datuma/časa. Lahko tudi odštejete število enot od vrednosti datuma/časa, tako da navedete negativno vrednost.

Funkcija DateDiff vrne razliko med dvema vrednostma datuma/ časa. Rezultat je število enot.

Za obe funkciji so lahko enote Milliseconds, Seconds, Minutes, Hours, Days, Months, Quarters ali Years. Privzeto obe funkciji kot enote uporabljata Dnevi.

Funkcija TimeZoneOffset vrne število minut med uporabnikovim lokalnim časom in časom UTC (usklajen univerzalni čas).

Funkcijo DateAdd lahko uporabite skupaj s funkcijo TimeZoneOffset za pretvorbo med uporabnikovim lokalnim časom in časom UTC (usklajen univerzalni čas). Če prištejete funkcijo TimeZoneOffset, se lokalni čas pretvori v UTC, če pa jo odštejete (prištejete negativno vrednost) se UTC pretvori v lokalni čas.

Glejte tudi Vrste podatkov »Date«, »Time« in »DateTime« ter delo z datumi in časi za več informacij.

Sintaksa

DateAdd( DateTime, Addition [, Units ] )

  • DateTime – obvezno. Vrednost datuma/časa za operiranje.
  • Addition – obvezno. Število v možnosti Enote, ki se prišteje k DateTime.
  • Units – izbirno. Vrsta možnosti Units, ki se prišteje: Milliseconds, Seconds, Minutes, Hours, Days, Months, Quarters ali Years. Če ni določeno, se uporabi Days.

DateDiff( StartDateTime, EndDateTime [, Units ] )

  • StartDateTime – obvezno. Začetna vrednost datuma/časa.
  • EndDateTime – obvezno. Končna vrednost datuma/časa.
  • Units – izbirno. Vrsta možnosti Units, ki se prišteje: Milliseconds, Seconds, Minutes, Hours, Days, Months, Quarters ali Years. Če ni določeno, se uporabi Days.

TimeZoneOffset( [ DateTime ] )

  • DateTime – izbirno. Vrednost datuma/časa za katero se vrne odmik. Privzeto je uporabljen trenutni datum/čas.

Primeri

V vseh teh primerih domnevamo, da sta trenutni datum in čas 15. julij 2013, 13:02.

Enostavna funkcija DateAdd

Formula Opis Rezultat
Text( DateAdd( Now(), 3 ),
"dd-mm-yyyy hh:mm" )
Prišteje tri dni (privzete enote) trenutnemu datumu in času. "18-07-2013 13:02"
Text( DateAdd( Now(), 4, Hours ),
"dd-mm-yyyy hh:mm" )
Prišteje štiri ure trenutnemu datumu in času. "15-07-2013 17:02"
Text( DateAdd( Today(), 1, Months ),
"dd-mm-yyyy hh:mm" )
Prišteje en mesec trenutnemu datumu, brez časa, kot je Today, ne vrne komponente časa. "15-08-2013 00:00"
Text( DateAdd( Now(), ‑30, Minutes ),
"dd-mm-yyyy hh:mm" )
Odšteje 30 minut od trenutnega datuma in časa. "15-07-2013 12:32"

Enostavna funkcija DateDiff

Formula Opis Rezultat
DateDiff( Now(), DateValue("1/1/2014") ) Vrne vrednost med dvema enotama v privzetih enotah Days 170
DateDiff( Now(), DateValue("1/1/2014"), Months ) Vrne razliko med dvema vrednostma v enoti Months 6
DateDiff( Now(), Today(), Minutes ) Vrne vrednost med trenutnim datumom/časom in trenutnim datumom (brez časa) v minutah. Ker je Now pozneje kot Today, bo rezultat negativen. –782

Pretvorba v UTC

Za pretvorbo v UTC (usklajen univerzalni čas), prištejte TimeZoneOffset za določen čas.

Na primer, predstavljajmo si, da sta trenutni datum in čas 15. julij 2013, 13:02 v pacifiškem poletnem času (PDT, UTC-7). Za določitev trenutnega časa v UTC uporabite:

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

TimeZoneOffset privzeto uporablja trenutni čas, da mu ni treba posredovati argumenta.

Če želite videti rezultat, uporabite funkcijo Text z obliko zapisa dd-mm-yyyy hh:mm, ki vrne 15-07-2013 20:02.

Pretvorba iz UTC

Če želite pretvoriti iz UTC, odštejte TimeZoneOffset (tako da prištejete negativno vrednost) za dani čas.

Na primer, predstavljajte si, da sta datum in čas UTC 15. julij 2013, 8:02 shranjena v spremenljivki, imenovani StartTime. Da prilagodite čas za uporabnikov časovni pas, uporabite:

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

Upoštevajte negativni znak pred TimeZoneOffset, da odštejete odmik, namesto da bi ga dodali.

Če želite videti rezultat, uporabite funkcijo Text z obliko zapisa dd-mm-yyyy hh:mm, da nastane 15-07-2013 13:02, če ste v pacifiškem poletnem času.