Sok esetben fontos lehet, hogy a program kizárólag érvényes dátumokat fogadjon el. Természetesen meg lehet vizsgálni, hogy a felhasználó érvényes évet, hónapot, napot adott-e meg. Azonban egyáltalán nem biztos, hogy az e módszer szerint megvizsgált dátum ténylegesen létezik is. Tegyük fel például, hogy a felhasználó 97/09/31-et ad meg. Egyébként az év, hónap, nap érvényes érték lesz, de szeptember 31-dikét nem fogunk találni a naptárban. A dátumok érvényessége és létezése a következő módon egyszerűen megvizsgálható: var adatetime : tdatetime; ... try adatetime:=StrToDate(inputdatestring); except // EConvertError error - invalid date or invalid date format end; Ez a módszer természetesen a szökőévek tekintetében is működni fog.