Имя: Пароль:
1C
1С v8
Дата начала следующего месяца
,
0 Саша80
 
18.12.12
09:25
Есть дата документа ДатаДок, нужны четыре даты получить с нее, начало текущего месяца, конецтекущего месяца, начало следующего месяца и конец следующего месяца. С первыми двумя проблем нет а вот как вычислить другие? начало и конец следующего месяца? погуллил вроде нет ничего
1 ДенисЧ
 
18.12.12
09:27
НачалоСледующего = НачалоМесяца(КонецМесяца(док.Дата) + 10))

Остально по аналоги
2 zak555
 
18.12.12
09:27
НачалоСледующегоМесяца = НачалоМесяца(ДобавитьМесяц(ТвояДата, 1));
КонецСледующегоМесяца = КонецМесяцаМесяца(ДобавитьМесяц(ТвояДата, 1))
3 zak555
 
18.12.12
09:28
(1) почему 10 прибавляешь секунд ?
4 kosts
 
18.12.12
09:30
Не слушай их, мой код правильнее.


Год = Год(ДатаДок);
Месяц = Месяц(ДатаДок);
День = 1;

Если Месяц = 12 Тогда
   Месяц = 1;
   Год = Год + 1;
КонецМесяца;

НачалоСледующегоМесяца  = Дата(Год, Месяц, День);
5 ДенисЧ
 
18.12.12
09:31
(3) По инерциии :-) однажды наткнулся, что 1 секунда не дала нужного результата, с  тех пор не меньше 10...
6 kosts
 
18.12.12
09:32
Забыл месяц увеличить )


Год = Год(ДатаДок);
Месяц = Месяц(ДатаДок);
День = 1;

Если Месяц = 12 Тогда
   Месяц = 1;
   Год = Год + 1;
Иначе
   Месяц = Месяц + 1;
КонецЕсли;

НачалоСледующегоМесяца  = Дата(Год, Месяц, День);
7 Саша80
 
18.12.12
09:36
(6)а конец следующего месяца?
8 Maxus43
 
18.12.12
09:37
(5) чудес не бывает (с)
9 kosts
 
18.12.12
09:37
(7) В принципе не сложно, но не придумал как быть с високосным годом...
10 Саша80
 
18.12.12
09:38
блин туплю..все разобрался всем спасибо