Чтоб упростить последующие вычисления хорошо бы добавить к таблице колонку "Возраст" и заполнять её данными из поля "Дата рождения" с помощью вот этого:
Код:
function CalculateAge(Birthday, CurrentDate: TDate): Integer;
var
Month, Day, Year, CurrentYear, CurrentMonth, CurrentDay: Word;
begin
DecodeDate(Birthday, Year, Month, Day);
DecodeDate(CurrentDate, CurrentYear, CurrentMonth, CurrentDay);
if (Year = CurrentYear) and (Month = CurrentMonth) and (Day = CurrentDay) then
Result:= 0 else
begin
Result:= CurrentYear - Year;
if (Month > CurrentMonth) then Dec(Result) else
if (Month = CurrentMonth) and (Day > CurrentDay) then Dec(Result);
end;
// ©Drkb::04233
end;
Пример вызова:
Код:
Label1.Caption:= Format('Петров М.А. 12.03.1978 (%d)', [CalculateAge(StrToDate('12.03.1978'), Date)]);
Фильтровать будет проще, да и нагляднее так юзеру.