IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
pH
- Сообщения: 10
- Зарегистрирован: 09 ноя 2005, 13:43
Сообщение
pH » 03 апр 2006, 12:00
Нужно вычислить количество полных годов между двумя датами .
Делаю так :
function YB(var Date1,Date2:Tdatetime): Integer; cdecl; export;
begin
Result := YearsBetween(Date1,Date2)
end;
А при вызове получаю 0
Укажите на ошибку пожалуйста

-
hvlad
- Разработчик Firebird
- Сообщения: 1244
- Зарегистрирован: 21 мар 2005, 10:48
Сообщение
hvlad » 03 апр 2006, 12:46
Читай о том, как даты передаются в UDF
-
Dimitry Sibiryakov
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Сообщение
Dimitry Sibiryakov » 03 апр 2006, 14:03
pH писал(а):Нужно вычислить количество полных годов между двумя датами.
А что, простое CAST((Date2-Date1)/365.400 AS INTEGER) уже считается некошерным?