ДатеАдд, ДатеДифф и ТимеЗонеОффсет функције
Function | Односи се на |
---|---|
Датум додавања | Колоне Dataverse формуле за апликације платна Токови на радној површини Апликације Power Platform засноване на моделу ЦЛИ |
ДатеДифф | Колоне Dataverse формуле за апликације платна Токови на радној површини Апликације Power Platform засноване на моделу ЦЛИ |
Временска зонаОфсет | Цанвас аппс Десктоп токови Апликације Power Platform засноване на моделу ЦЛИ |
Додаје или проналази разлику у вредностима датум/време и конвертује између локалног времена и UTC.
Функција DateAdd додаје број јединица у вредност датум/време. Резултат је нова вредност датум/време. Такође можете одузети број јединица од вредности датум/време тако што ћете навести негативну вредност.
Функција DateDiff враћа разлику између две вредности датум/време. Резултат је цео број јединица.
За обе функције, јединице могу бити ТимеУнит.Миллисецондс, ТимеУнит.Сецондс , ТимеУнит.Минутес , ТимеУнит.Хоурс , ТимеУнит.Даис , ТимеУнит.Монтхс , ТимеУнит.Qуартерс или ТимеУнит.Yеарс . По дефаулту, обе функције користе ТимеУнит.Даис као јединице.
Функција TimeZoneOffset враћа број минута између локалног времена корисника и UTC (Coordinated Universal Time).
Можете користити DateAdd са TimeZoneOffset да бисте конвертовали између локалног времена корисника и UTC (Coordinated Universal Time). Додавање TimeZoneOffset претвориће локално време у UTC, а одузимање (додавање негативног) претвориће из UTC у локално време.
Такође погледајте Датум , време и ДатумВреме типови података и рад са датумима и временима за више информација.
ДатеАдд (ДатеТиме,Аддитион [, Јединице ] )
- ДатеТиме - Обавезно. Вредност датум/време на којој се ради.
- Додатак - Обавезно. Број, у Јединицима, за додавање у DateTime.
- Јединице - Опционо. Тип јединица које треба додати: ТимеУнит.Миллисецондс , ТимеУнит.Сецондс , ТимеУнит.Минутес , ТимеУнит.Хоурс , ТимеУнит.Даис , ТимеУнит.Монтхс , ТимеУнит.Qуартерс или ТимеУнит.Yеарс. Ако није наведено, користе се ТимеУнит.Даис .
ДатеДифф (СтартДатеТиме,ЕндДатеТиме [, Јединице ] )
- СтартДатеТиме - Обавезно. Покретање вредности датум/време.
- ЕндДатеТиме - Обавезно. Завршавање вредности датум/време.
- Јединице - Опционо. Тип јединица за одузимање: ТимеУнит.Миллисецондс , ТимеУнит.Сецондс , ТимеУнит.Минутес , ТимеУнит.Хоурс , ТимеУнит.Даис , ТимеУнит.Монтхс , ТимеУнит.Qуартерс , или ТимеУнит.Yеарс. Ако није наведено, користе се ТимеУнит.Даис .
ТимеЗонеОффсет ( [ ДатеТиме ] )
- ДатеТиме - Опционо. Вредност датум/време за коју се враћа одступање. Подразумевано се користи тренутни датум/време.
У свим овим примерима претпоставите да су тренутни датум и време 15. јул 2013., 13:02.
Формула | Опис | Резултат |
---|---|---|
Теxт ( ДатеАдд( Ноw(), 3 ), "dd-mm-yyyy hh:mm" ) |
Додаје се три дана (подразумеване јединице) тренутном датуму и времену. | „18. 7. 2013., 13:02“ |
Теxт ( ДатеАдд( Ноw(), 4, ТимеУнит.Хоурс ), "dd-mm-yyyy hh:mm" ) |
Додајте четири сата тренутном датуму и времену. | „15. 7. 2013., 17:02“ |
Теxт ( ДатеАдд( Тодаy(), 1, ТимеУнит.Монтхс ), "dd-mm-yyyy hh:mm" ) |
Додаје се месец дана тренутном датуму, без времена као Данас не враћа временску компоненту. | „15. 8. 2013., 00:00“ |
Теxт ( ДатеАдд( Ноw(), -30, ТимеУнит.Минутес ), "dd-mm-yyyy hh:mm" ) |
Одузима 30 минута од тренутног датума и времена. | „15. 7. 2013., 12:32“ |
Формула | Опис | Резултат |
---|---|---|
ДатеДифф ( Ноw(), ДатеВалуе("1/1/2014") ) | Враћа разлику између две јединице у подразумеваним јединицама ТимеУнит.Даис | 170 |
ДатеДифф ( Ноw(), ДатеВалуе("1/1/2014"), ТимеУнит.Монтхс ) | Враћа разлику између две вредности у ТимеУнит.Монтхс | 6 |
ДатеДифф ( Ноw(), Тодаy(), ТимеУнит.Минутес ) | Враћа разлику само између тренутног датума/времена и тренутног датума (без времена) у минутама. Од када је Сада касније од Данас резултат ће бити негативан. | -782 |
Функција DateDiff враћа само цео број јединица које се одузимају, а прецизност је дата у наведеној јединици. Да бисте израчунали разлику са већом прецизношћу, користите мању јединицу и конвертујте резултат на одговарајући начин, као у примерима у наставку.
Формула | Опис | Резултат |
---|---|---|
ДатеДифф ( ТимеВалуе("09:45:00"), ТимеВалуе("10:15:36"), ТимеУнит.Хоурс ) | Минути/секунде се занемарују, разлика се заснива на времену до сата. | 1 |
ДатеДифф ( ТимеВалуе("09:45:00"), ТимеВалуе("10:15:36"), ТимеУнит.Минутес)/60 | Минути се користе у разлици, а резултат се дели са 60 да би се добила разлика у сатима. | 0.5 |
ДатеДифф ( ТимеВалуе("09:45:00"), ТимеВалуе("10:15:36"), ТимеУнит.Сецондс)/3600 | Минути и секунде се користе у разлици, а резултат се дели са 3600 да би се добила разлика у сатима. | 0.51 |
Да бисте конвертовали у UTC (Координисано универзално време), додаје TimeZoneOffset за дато време.
На пример, замислите да су тренутни датум и време 15. јул 2013., 13:02 у Пацифичко летње/зимско рачунање времена (PDT, UTC-7). Да бисте одредили тренутно време у UTC, користите:
- ДатеАдд ( Ноw(), ТимеЗонеОффсет(), ТимеУнит.Минутес
ТимеЗонеОффсет подразумева тренутно време, тако да не морате да му проследите аргумент.
Да бисте видели резултат, користите функцију Text са форматом dd-mm-yyyy hh:mm, који ће вратити 15. 7. 2013., 20:02.
Да бисте конвертовали из UTC, одузмите TimeZoneOffset (додавањем негативног) за дато време.
На пример, замислите UTC датум и време 15. јул 2013., 20:02 се чува у променљивој под називом StartTime. Да бисте подесили време за временску зону корисника, користите:
- ДатеАдд ( СтартТиме, − ТимеЗонеОффсет( СтартТиме), ТимеУнит.Минутес )
Имајте на уму негативни знак пре TimeZoneOffset да бисте одузели одступање, а не додали га.
Да бисте видели резултат, користите функцију Text са форматом dd-mm-yyyy hh:mm, што ће резултирати у 15. 7. 2013., 13:02 ако сте у пацифичком летњем/зимском рачунању времена.