Funcția DATEDIF
Funcția DATEDIF calculează numărul de zile, luni sau ani dintre două date. Data de început trebuie să fie anterioară sau egală cu data de sfârșit. În caz contrar, funcția returnează "ERROR".
Format
DATEDIF(start_date; end_date; "unit")
Formatul datei:
- Data este scrisă strict în ordinea zi-lună-an;
- Ziua și luna pot fi scrise cu sau fără zero inițial, de exemplu 01.01.2000, 15.10.2000, 1.1.2000;
- Anul poate fi scris cu 4 cifre (01.01.2015) sau cu 2 (01.01.15) (un an scris cu două cifre este interpretat ca anul secolului curent - 08.12.93 = 08.12.2093, 08.12.00 = 08.12.2000);
- Oricare simbol (în afară de cifră) poate fi separator în dată. Dacă separatorul este punctul (15.10.2020), data nu este încadrată între ghilimele, iar dacă este / sau - (15/10/2020 sau 15-10-2020) — atunci se folosește ghilimele.
Unități:
- d — diferența în zile.
Exemplul 1: start_date 25.02.2007, end_date 26.02.2007 Rezultat: 1 (zi)
Exemplul 2: start_date 01.02.2007, end_date 01.03.2007 Rezultat: 28 (zile)
Exemplul 3: start_date 28.02.2008, end_date 01.03.2008 Rezultat: 2 (zile), deoarece 2008 este an bisect
- m — diferența în luni întregi.
Exemplul 1: start_date 01.02.2007, end_date 01.03.2007 Rezultat: 1 (lună)
Exemplul 2: start_date 01.03.2007, end_date 31.03.2007 Rezultat: 0
Exemplul 3: start_date 01.02.2007, end_date 01.03.2009 Rezultat: 25 luni
Exemplul 4: start_date 31.03.2007, end_date 01.05.2007 Rezultat: 1 (lună)
Exemplul 5: start_date 01.04.2007, end_date 01.05.2007 Rezultat: 1 (lună)
Exemplul 6: start_date 31.03.2007, end_date 30.04.2007 Rezultat: 0
- y — diferența în ani întregi.
Exemplul 1: start_date 01.02.2007, end_date 01.03.2009 Rezultat: 2 (ani)
Exemplul 2: start_date 01.04.2007, end_date 01.03.2009 Rezultat: 1 (an)
- ym — diferența în luni întregi fără a ține cont de ani.
Exemplul 1: start_date 01.02.2007, end_date 01.03.2009 Rezultat: 1 (lună) — se compară data de sfârșit 01.03.2009 cu data de început modificată 01.02.2009 (anul datei de început este înlocuit cu anul datei de sfârșit deoarece 01.02 este mai mic decât 01.03).
Exemplul 2: start_date 01.04.2007, end_date 01.03.2009 Rezultat: 11 (luni) — se compară data de sfârșit 01.03.2009 cu data de început modificată 01.04.2008 (anul datei de început este înlocuit cu anul datei de sfârșit minus un an deoarece 01.04 este mai mare decât 01.03).
- md — diferența în zile fără a ține cont de luni și ani.
Data de început este aliniată la data de sfârșit pentru comparație.
Exemplul 1: start_date 31.08.2007, end_date 01.05.2008 — data de început este transformată în 31.04.2008. Dar aprilie are 30 de zile, astfel că 31 aprilie va fi ajustat și va deveni 30 aprilie. Același lucru se aplică și pentru februarie, inclusiv anii bisecți (adică nu vor exista date inexistente în februarie; în schimb, ele vor fi înlocuite cu ultima zi a lunii februarie din anul datei de sfârșit).
- yd — diferența în zile fără a ține cont de ani.
Exemplul 1: start_date 01.01.2007, end_date 31.12.2007 Rezultat: 364 (zile)
Exemplul 2: start_date 01.01.2008, end_date 31.12.2008 Rezultat: 365 (zile), deoarece 2008 este an bisect
Exemplu
DATEDIF({{Task.Creation Date}}; {{Task.Legal Report Submission Date}}; "d")