Belešku
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da se prijavite ili da promenite direktorijume.
Pristup ovoj stranici zahteva autorizaciju. Možete pokušati da promenite direktorijume.
| Funkcije | Odnosi se na |
|---|---|
| DateAdd DateDiff |
|
| TimeZoneOffset |
|
| 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.