|
А как не в запросах, а в коде получить разницу дат в месяцах? | ☑ | ||
---|---|---|---|---|
0
Капюшон
14.06.12
✎
13:42
|
В запоросах есть функция РАЗНОСТЬДАТ. А мне надо в самом коде такую функцию. как решить это? Не хочу делить на количество дней и т.п. есть вариант проще. может функции в типовых есть?
|
|||
1
pumbaEO
14.06.12
✎
13:42
|
ДобавитьМесяц
|
|||
2
Агент Инфостарта
14.06.12
✎
13:44
|
||||
3
Капюшон
14.06.12
✎
13:46
|
(1)это не то.
(2)придется так сделать. |
|||
4
Агент Инфостарта
14.06.12
✎
13:46
|
(0) Ещё v8: Разность дат 1С 8.1
|
|||
5
mikadi
14.06.12
✎
14:08
|
Если именно в месяцах, то можно что-то типа
Окр((НачалоМесяца(Дата2) - НачалоМесяца(Дата1))/30,0). Некрасиво, но вроде корректно. |
|||
6
Fragster
гуру
14.06.12
✎
14:09
|
12* (год2 - год1) + месяц2 - месяц1. так оно работает в запросе
|
|||
7
nuctoh
14.06.12
✎
14:11
|
(5) Точность никакая. Я бы заюзал цикл:
Месяцев = 0; Пока ДобавитьМесяц(Дата1, Месяцев) < Дата2 Цикл Месяцев = Месяцев + 1; КонецЦикла; |
|||
8
nuctoh
14.06.12
✎
14:12
|
(7) Гоню-гоню, вот так надо:
Месяцев = 0; Пока ДобавитьМесяц(Дата1, Месяцев+1) < Дата2 Цикл Месяцев = Месяцев + 1; КонецЦикла; |
|||
9
Fragster
гуру
14.06.12
✎
14:16
|
(8) в запросе работает не так, см. v8: v8: Туплю с разностью дат в запросе
|
|||
10
Капюшон
14.06.12
✎
14:23
|
есть один чувак на форуме. вот его функция
Функция РазностьДатМесяц(ДатаНачало,ДатаКонца) Экспорт Возврат ?(НачалоМесяца(ДатаНачало) >= НачалоМесяца(ДатаКонца), 0, 1 + РазностьДатМесяц(ДатаНачало,НачалоМесяца(ДатаКонца)-1)); КонецФункции |
|||
11
Fragster
гуру
14.06.12
✎
14:24
|
(10) сделайте меня развидеть это :)
|
|||
12
Fragster
гуру
14.06.12
✎
14:24
|
РазностьДатМесяц('00010101','20120614'); ;)
|
|||
13
Капюшон
14.06.12
✎
15:02
|
(11)что означает ваша фраза?
|
|||
14
Fragster
гуру
14.06.12
✎
15:03
|
(13) ты попробовал (12)?
|
|||
15
Капюшон
14.06.12
✎
15:07
|
(14)не могу понять вашь код. зачем точки с запятой две и скобка
|
|||
16
mikadi
14.06.12
✎
15:07
|
(7) А почему "точность никакая"? В каких случаях будет ошибка?
|
|||
17
Fragster
гуру
14.06.12
✎
15:14
|
(16) в году примерно 12,175 месяцев. если брать разность дат больше чем за (примерно) 7 лет - будет ошибка, при расчете длинных кредитов это может влиять.
ну и не на 30, а на 86400*30 в в8 делить надо. |
|||
18
Fragster
гуру
14.06.12
✎
15:21
|
(15) а, ну да, ну да.
|
|||
19
mikadi
14.06.12
✎
15:40
|
(17) Понял. Спасибо.
|
|||
20
John83
14.06.12
✎
16:51
|
(17) а чему у тебя равен один месяц?
|
|||
21
Fragster
гуру
14.06.12
✎
16:55
|
(20) у меня - см (6) и (9)
|
|||
22
John83
14.06.12
✎
16:59
|
однако...
|
|||
23
n koretsky
14.06.12
✎
17:53
|
(0) а чем запрос не угодил? или что мешает функцию самому написать? но в ней использовать РазностьДат в запросе.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |