Delphi - Új dátum/idő függvények a Delphi 6-ban

Dátum/idő függvények 1. rész

forráskód letöltése
A Delphi 5 és régebbi verziókban a dátumok és időpontok kezelése néhány alapvető függvénytől eltekintve nem igazán volt támogatva. A Delphi 6-ban megjelent egy új unit, amely nagyon sok új függvényt tartalmazza a dátumok és időpontok könnyebb kezeléséhez. Ebben a cikksorozatban ezeket a függvényeket vesszük sorra, részletesen bemutatva az egyes függvényeket.
A Delphi a dátumokat és időpontokat egyetlen valós típusú változóban tárolja. Ennek a típusnak a neve TDataTime, ezt a Delphi a System unit-ban deklarálja:
TDateTime = type Double;
Az érték egész része az 1899.12.31. óta eltelt napok számát határozza meg. Negatív érték esetén az adott dátum előtti napokat adhatjuk meg. Az óra, perc, másodperc és századmásodperc az érték tizedes részében van tárolva századmásodpercben megadva.
Az új függvények és konstansok a DateUtils unit-ban találhatók, így erre kel hivatkoznunk, ha használni szeretnénk ezeket.
DateOf
Osztály:
function DateOf(
const AValue: TDateTime
): TDateTime;
Ez a függvény a paraméterként megkapott dátumból törli az időpontot, és csak a dátum részt (egész rész) adja vissza.
TimeOf
Osztály:
function TimeOf(
const AValue: TDateTime
): TDateTime;
A paraméterként megkapott dátumból törli a dátum részt, és csak az időpontot adja vissza (tizedes rész).
IsInLeapYear
Osztály:
function IsInLeapYear(
const AValue: TDateTime
): Boolean;
A paraméterként megadott dátumról eldönti, hogy az szökőévre esik-e. Ha igen, akkor a függvény visszatérési értéke igaz, ellenkező esetben hamis.
Az IsLeapYear függvénytől annyiban különbözik, hogy az évszám helyett dátumot kell megadni.
IsPM
Osztály:
function IsPM(
const AValue: TDateTime
): Boolean;
A paraméterként megkapott időpontról eldönti, hogy az délutánra esik-e. A függvény visszatérési értéke igaz, ha az időpont délutánra esik, és hamis, ha nem. A dátum részét a paraméternek nem veszi figyelembe, mivel ez esetben nincs is szükség rá.
IsValidDate
Osztály:
function IsValidDate(
const AYear,
AMonth,
ADay: Word
): Boolean;
A függvény eldönti, hogy a paraméterek által meghatározott dátum valós dátum-e. ha a dátum valós, akkor igaz, ellenkező esetben hamis értékkel tér vissza.
Paraméterek
const AYear
Az év száma (1-9999).
AMonth
A hónap száma (1-12).
ADay: Word
A nap száma (1-31). Az érvényes intervallum felső határát a hónap napjainak száma határozza meg.
IsValidTime
Osztály:
function IsValidTime(
const AHour,
AMinute,
ASecond,
AMilliSecond: Word
): Boolean;
A függvény eldönti, hogy a paraméterek által meghatározott időpont érvényes-e. ha igen, akkor igaz, ellenkező esetben pedig hamis értékkel tér vissza.
Paraméterek
const AHour
Az óra értéke (0-23, vagy 24).
AMinute
A perc értéke (0-59).
ASecond
A másodperc értéke (0-59).
AMilliSecond: Word
Az ezredmásodperc értéke (0-999);
Megjegyzés
A függvény akkor is igaz értékkel tér vissza, ha az óra 24, a többi érték pedig 0, mivel ez megfelel a 0:00:00 időpontnak.
IsValidDateTime
Osztály:
function IsValidDateTime(
const AYear,
AMonth,
ADay,
AHour,
AMinute,
ASecond,
AMilliSecond: Word
): Boolean;
Ez a függvény az IsValidDate és IsValidTime függvények összevont változata. Ezt használva egy lépésben eldönthetjük, hogy a paraméterek által meghatározott dátum és időpont valós időpontot határoz meg. Ha függvény visszatérési értéke igaz, ha igen, és hamis, ha nem.
Paraméterek
const AYear
Az év száma (1-9999).
AMonth
A hónap száma (1-12).
ADay
A nap száma (1-31). Az érvényes intervallum felső határát a hónap napjainak száma határozza meg.
AHour
Az óra értéke (0-23, vagy 24).
AMinute
A perc értéke (0-59).
ASecond
A másodperc értéke (0-59).
AMilliSecond: Word
Az ezredmásodperc értéke (0-999).
Megjegyzés
Az időpont akkor is érvényes, ha az óra 24, a többi érték pedig 0 (csak az időpontokhoz tartozó értékek), mivel ez megfelel a 0:00:00 időpontnak.
IsValidDateDay
Osztály:
function IsValidDateDay(
const AYear,
ADayOfYear: Word
): Boolean;
Ez a függvény eldönti, hogy a paraméterként megadott évben van-e annyi nap, amit szintén paraméterként adunk meg.
Paraméterek
const AYear
Az év száma (1-9999).
ADayOfYear: Word
Az év adott napjának száma (az év első napjától számítva).
Visszatérési érték
Igaz, ha van ennyi nap az évben, és hamis, ha nem. Akkor is hamis értékkel tér véssza, ha a megadott év nem esik az érvényes intervallumba.
IsValidDateWeek
Osztály:
function IsValidDateWeek(
const AYear,
AWeekOfYear,
ADayOfWeek: Word
): Boolean;
A függvény eldönti, hogy a megadott év, hét és nap valós adatokat tartalmaznak-e.
Paraméterek
const AYear
Az év száma (1-9999).
AWeekOfYear
A hét sorszáma (1-). A hét sorszáma nem lehet nagyobb, mint az adott évben található hetek száma.
ADayOfWeek: Word
A hét adott napjának száma (1-7). A hét első napja a vasárnap (1).
Visszatérési érték
A visszatérési érték igaz, ha minden megadott érték megfelelő, és hamis, ha nem.
IsValidDateMonthWeek
Osztály:
function IsValidDateMonthWeek(
const AYear,
AMonth,
AWeekOfMonth,
ADayOfWeek: Word
): Boolean;
A függvény eldönti, hogy a paraméterként megadott évszám, hónap, a hét száma a hónapon belül, és a hét napjának száma megfelelő értékeket tartalmaz-e.
Paraméterek
const AYear
Az évszáma (1-9999).
AMonth
A hónap száma (1-12).
AWeekOfMonth
A hét sorszáma a hónapon belül (1-5).
ADayOfWeek: Word
A nap sorszáma a héten belül (1-7). Az első nap a vasárnap (1).
Visszatérési érték
A visszatérési érték igaz, ha minden érték megfelelő, és hamis, ha nem.
WeeksInYear
Osztály:
function WeeksInYear(
const AValue: TDateTime
): Word;
A függvény visszaadja, hogy a paraméterként megadott dátum szerinti évben hány hét van.
Paraméterek
const AValue: TDateTime
A dátum, amelynek kérdezett évre kell esnie.
WeeksInAYear
Osztály:
function WeeksInAYear(
const AYear: Word
): Word;
A függvény a WeeksInYear függvénytől annyiban különbözik, hogy itt paraméterként az év számát kell megadnunk. A függvény visszatérési értéke az adott évben található hetek száma.
Paraméterek
const AYear: Word
Az év száma (1-9999).
DaysInYear
Osztály:
function DaysInYear(
const AValue: TDateTime
): Word;
A függvény lekérdezi, hogy a paraméterként megadott dátum szerinti évben hány nap van összesen, és a napok számával tér vissza.
Paraméterek
const AValue: TDateTime
Ebben a paraméterben egy olyan dátumot kell megadnunk, amely az adott évre esik.
DaysInAYear
Osztály:
function DaysInAYear(
const AYear: Word
): Word;
Ez a függvény a DayInYear függvénytől annyiban különbözik, hogy itt paraméterként az év számát kell megadnunk. A függvény visszatérési értéke az adott évben található napok száma.
Paraméterek
const AYear: Word
Az év száma (1-9999).
DaysInMonth
Osztály:
function DaysInMonth(
const AValue: TDateTime
): Word;
A függvény a paraméterként megadott dátum szerinti hónap napjainak számát adja vissza.
Paraméterek
const AValue: TDateTime
A dátum, amelynek a kérdezet hónapra kell esnie.
DaysInAMonth
Osztály:
function DaysInAMonth(
const AYear,
AMonth: Word
): Word;
Ez a függvény a DaysInMonth függvénytől annyiban különbözik, hogy itt paraméterként az évszámot, és a hónap számát kell megadnunk. A függvény visszatérési értéke a megadott hónap napjainak száma.
Paraméterek
const AYear
Az évszám (1-9999).
AMonth: Word
A hónap száma (1-12).
Today
Osztály:
function Today: TDateTime;
Az aktuális dátumot adja vissza ez a függvén. Gyakorlatilag megegyezik a Date függvénnyel.
Yesterday
Osztály:
function Yesterday: TDateTime;
A tegnapi nap dátumával tér vissza. Ez a függvény csupán annyit tesz, hogy a Date függvény értékéből kivon 1-et.
Tomorrow
Osztály:
function Tomorrow: TDateTime;
A holnapi nap dátumával tér vissza. A függvény a Date függvény értékéhez hozzáad 1-et.
IsToday
Osztály:
function IsToday(
const AValue: TDateTime
): Boolean;
A paraméterként megadott dátumról eldönti, hogy az a mai napra esik-e. Ha igen, akkor a visszatérési értéke igaz, ellenkező esetben pedig hamis.
Paraméterek
const AValue: TDateTime
Ebben a paraméterben adhatjuk meg azt a dátumot, amiről el akarjuk dönteni, hogy a mai napra esik-e.
IsSameDay
Osztály:
function IsSameDay(
const AValue,
ABasis: TDateTime
): Boolean;
A paraméterként megadott két dátumról eldönti, hogy ugyanarra a napra esnek-e. Ha a két dátum ugyanarra a napra esik, akkor a visszatérési érték igaz, ellnekező esetben hamis.
Paraméterek
const AValue
Az első összehasonlítandó dátum.
ABasis: TDateTime
A második összehasonlítható dátum.

Dátum/idő függvények cikksorozat