Имя: Пароль:
1C
1C 7.7
v7: Как получить количество месяцев отнимая даты
,
0 TDV
 
02.02.16
17:41
Например 25,02,16-25,12,15 так чтобы получилось число целое 2
1 FIXXXL
 
02.02.16
17:42
в запросе, МЕСЯЦ(Дата)
2 timurhv
 
02.02.16
17:44
(0) Вычесть как в (1) и вычесть год*12
3 FIXXXL
 
02.02.16
17:44
(1) сорри, не углядел 7.7
4 TDV
 
02.02.16
17:57
Вспомнил, вопрос снят
5 Злопчинский
 
02.02.16
18:35
и как решил?
6 Провинциальный 1сник
 
02.02.16
19:09
РазностьВМесяцах=(ДатаГод(КонДата)*12+ДатаМесяц(КонДата))-(ДатаГод(НачДата)*12+ДатаМесяц(НачДата))
7 Злопчинский
 
02.02.16
22:28
(6) очевидно, это неверно, т.к.

(ДатаГод('31.01.2016')*12+ДатаМесяц('31.01.2016'))-(ДатаГод('31.12.2015')*12+ДатаМесяц('31.12.2015')) = 1
а по факту - 2 месяца, так как полный январь 2016 (1месяц)+1день декабря = 2 месяца

и

(ДатаГод('31.01.2016')*12+ДатаМесяц('31.01.2016'))-(ДатаГод('01.12.2015')*12+ДатаМесяц('01.12.2015')) = 1
- что вообще явно неверно, так как если впервом слдучае еще можно поспорить что один день декабря это целый мемсяц, то вторая контролька - никак не поспоришь
8 Злопчинский
 
02.02.16
22:29
беда программистов (но вообщем и счастье тоже) - вера в собственную исключительность, что нам явно продемонстировано в (6)

;-)
9 Провинциальный 1сник
 
03.02.16
07:11
(7) Задаче в (0) решение соответствует. Особые случаи не оговорены. Какие проблемы?
10 Провинциальный 1сник
 
03.02.16
07:13
(8) Вы понимаете смысл задачи иначе, чем я и автор. Ему нужно не "количество месяцев, накрывающих диапазон", а тупо разность.
11 cw014
 
03.02.16
07:15
(10) +100500
(6)(8)Тут ты уже "додумал" детали. Этого делать не следует - четкое ТЗ есть в (0)
12 Рэйв
 
03.02.16
07:15
Разностьлет=ДатаГод(ТвояДатаКон)-ДатаГод(ТвояДатаНач);
РазностьМес=ДатаМесяц(ТвояДатаКон)-Датамесяц(ТвояДатаНач);
Месяцев=РазностьЛет*12+РазностьМес;

Как то так:-)
13 cw014
 
03.02.16
07:16
+(6) По факту разность у тебя с 01.12.15 по 31.01.16 - 2 месяца, а у ТП с 25.12.15 - 25.02.16 - 2 месяца
14 Мэс33
 
03.02.16
07:45
(12) А как посчитается :
01.02.2016 - 29.02.2016
15 Рэйв
 
03.02.16
07:58
(14)Обработать если начало больше конца то 0  дело плевое
16 Рэйв
 
03.02.16
07:59
(14)а.. или ты так период уазал:-)..Я думал отнимаешь
17 Рэйв
 
03.02.16
07:59
(14)0 полных месяцев.Все по честному.
18 Мэс33
 
03.02.16
08:04
(17) это же полный месяц )))
или не полный?
19 Рэйв
 
03.02.16
08:10
(18)до 29.02.2016 23:59:59 он не полный:-)
Только на момент 01.03.2016 00:00:00 он становится полным.
Так что докопаться не получилось:-))
20 Мэс33
 
03.02.16
08:13
(19) )))