powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как расчитать количество месяцев между датами?
10 сообщений из 10, страница 1 из 1
Как расчитать количество месяцев между датами?
    #33790124
SVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SVR
Гость
Привет всем!
Есть две произвольные даты. Как на FoxPro можно расчитать количество месяцев, сколько прошло с начала первой даты, до конца второй?
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790168
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Что такое "начало первой даты"? И, соответственно, "конец второй даты"?
2. Сколько дней в месяце считаем? 30, 31, 29?
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790206
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так, например:
Код: plaintext
1.
2.
ldDAteBeg = {^ 2006 - 01 - 23 }
ldDateEnd = date()
?MOD(YEAR(ldDateBeg)* 12 +MONTH(ldDateBeg)-YEAR(DATE())-MONTH(DATE()), 12 )-IIF(DAY(ldDateBeg)>DAY(DATE()), 1 , 0 )
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790288
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AleksMedНу так, например:
Код: plaintext
1.
2.
ldDAteBeg = {^ 2006 - 01 - 23 }
ldDateEnd = date()
?MOD(YEAR(ldDateBeg)* 12 +MONTH(ldDateBeg)-YEAR(DATE())-MONTH(DATE()), 12 )-IIF(DAY(ldDateBeg)>DAY(DATE()), 1 , 0 )

Не, не правильно. Допиливать и допиливать напильником надо.
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790317
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут посмотри.
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790353
SVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SVR
Гость
А что не правильно? Попробовал, вроде все правильно.
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790375
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SVRА что не правильно? Попробовал, вроде все правильно.
Сделай
ldDAteBeg = {^2005-01-23}
и всё поймешь.
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790426
SVR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SVR
Гость
Да, действительно. Но идея ясна, попробую разобраться.
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790518
piva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ковырял как-то - тока жаль криво пролучилось - идея хорошая - но погрешности губят идею
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
? mondiff({^ 2006 . 01 . 31 },{^ 2006 . 06 . 01 })
? mondiff({^ 2006 . 01 . 31 },{^ 2006 . 02 . 01 })

Procedure MonDiff
Lparameters m.date1, m.date2
Local lnDateNum1, lnDateNum2
lnDateNum1=Year(m.date1)* 12 +Month(m.date1)+Day(m.Date1)/Day(GoMonth(m.date1, 1 )-Day(GoMonth(m.date1, 1 )))
lnDateNum2=Year(m.date2)* 12 +Month(m.date2)+Day(m.Date2)/Day(GoMonth(m.date2, 1 )-Day(GoMonth(m.date2, 1 )))
Return (lnDateNum2-lnDateNum1)
...
Рейтинг: 0 / 0
Как расчитать количество месяцев между датами?
    #33790742
А если так
d1={^2005.01.31}
d2=DATE()
?(YEAR(d2)*12+MONTH(d2))-(YEAR(d1)*12+MONTH(d1))
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как расчитать количество месяцев между датами?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]