Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

Как прибавить к дате несколько месяцев   Найти похожие ветки 

 
Rule ©   (2004-10-21 11:39) [0]

FB 1.x значит проблемма в хранимой процедуре надо прибавить пару месяцев, щас я прибавляю так
DT=:MonthCount*30;
но какбы появляется погрешность в вычисленях так как не в каждом месяце то по 30 дней, что можете посоветовать, только убедительная просьба не надо советовать UDF ...

Всем заранее спасибо ...


 
Johnmen ©   (2004-10-21 11:55) [1]

Разложить дату на год, месяц, день.
Увеличить месяц.
Проверить и, если надо, скорректировать день для получившегося месяца.
Собрать дату.


 
stud ©   (2004-10-21 11:56) [2]

модуль DateUtils там много интересного


 
Rule ©   (2004-10-21 12:12) [3]

Johnmen ©   (21.10.04 11:55) [1]
если не сложно то с помощью чего разложить и собрать ?

stud ©   (21.10.04 11:56) [2]
это в делфи, а я прошу в Фаерберде, а если вы про УДФ, то в принципе то получилось, но не подходит в ряде политических соображений :)


 
stud ©   (2004-10-21 12:18) [4]

а передать в процедуру готовый параметр? или есть ограничения?


 
stud ©   (2004-10-21 12:20) [5]

разложить можно кажется extract


 
Johnmen ©   (2004-10-21 12:22) [6]


> Rule ©   (21.10.04 12:12) [3]
> Johnmen ©   (21.10.04 11:55) [1]
> если не сложно то с помощью чего разложить и собрать ?


разложить: EXTRACT
собрать: ||


 
Rule ©   (2004-10-21 12:22) [7]

stud ©   (21.10.04 12:18) [4]
Все подсчеты ведутся внутри процедуры, и входных параметров нет вообще ...
stud ©   (21.10.04 12:20) [5]
он помоему входит в состав слекта только, а вот как назад собрать ?


 
Rule ©   (2004-10-21 12:28) [8]

Johnmen ©   (21.10.04 12:22) [6]
собрать: ||

так это объединение строковых параметров, или вы имеете ввиду ещё и cast  использовать, тогда да ... мда спасибо ..., тогда как мне разложить подсчитаную дату, а не ту которая хранится в таблице ?

во, понял получилось чтото вроде:
Select extract(day from :date_end), extract(month from :date_end), extract(year from :date_end) from rdb$database into :date_end;

всем спасибо :)


 
Rule ©   (2004-10-21 12:48) [9]

Rule ©   (21.10.04 12:28) [8]
вернее

Select extract(day from :date_end), extract(month from :date_end), extract(year from :date_end) from rdb$database into :nday, :nmonth, :nyear;


 
Johnmen ©   (2004-10-21 13:04) [10]

>Rule ©   (21.10.04 12:28) [8]
>ещё и cast  использовать

Не обязательно. Можно использовать неявное преобразование.
day||"."||month||"."||year


 
Rule ©   (2004-10-21 13:16) [11]

Johnmen ©   (21.10.04 13:04) [10]
Ну и с cast"ом работает, и так работает, спасибо за информацию...



Страницы: 1 вся ветка

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.035 c
4-1096610271
KSergey
2004-10-01 09:57
2004.11.21
Позиция курсора в Edit


14-1099416329
Mihey_temporary
2004-11-02 20:25
2004.11.21
Фень Юань "Программирование графики для Windows"


4-1093952619
TeNY
2004-08-31 15:43
2004.11.21
Как заставить думать TMEmo Или Windows что в ТМемо есть много стр


1-1099500646
SelloutS
2004-11-03 19:50
2004.11.21
Как сгенерировать несколько чисел сумма которых = 1


1-1100076201
hgd
2004-11-10 11:43
2004.11.21
Как скопировать все файлы из папки в другую папку и





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский