Проблемы с подсчётом даты

Новая тема
"добрый день
Проблема с датой, когда ввожу новый документ почему-то модуль к ДатаОтключенияСтарая не хочет прибавлять Дата((ДатаОплаты+(30*Месяцы))) он её вычитает, в чём может быть дело?
перем ДатаОтключенияСтарая;

Процедура ОбработкаПроведения()
   СпрАбон=СоздатьОбъект("Справочник.Абоненты");
   Пока ПолучитьСтроку()=1 Цикл
       СпрАбон.ВыбратьЭлементы();
       Пока СпрАбон.ПолучитьЭлемент(НомерКарты)=1 цикл
           Если СпрАбон.НомерКарты=НомерКарты тогда
               СпрАбон.ДатаОплаты.Установить(ТекущаяДата(),ДатаОплаты);
               ДатаОтключенияСтарая=СпрАбон.ДатаОтключения;
               СпрАбон.ДатаОтключения.Установить(ТекущаяДата(),(Дата(ДатаОтключенияСтарая)+Дата((ДатаОплаты+(30*Месяцы)))));
               СпрАбон.Записать();
           КонецЕсли;
       КонецЦикла;  
   КонецЦикла;
КонецПроцедуры"
"Месяцы" имеет отрицательное значение.
Спасибо, буду искать выход. Может быть попробую Дату в Числовой формат перевести.
что это за код ?
убрать немедленно

что нужно сделать ?
Интересно, а что должно получиться при сложении 2-х дат?
дата из иного измерения (!)
чего хочу добиться: человек платит абонентскую плату за определённое косичество дней, пусть их будет 30, заплотил допустим 25.06.11, значит услуга у него отключится 27.07.11, но при этом у него расчётный период предыдущего месяца был такой 01.06.11 по 30.06.11. Получаеться что к 27.07.11 дано прибавить ещё 5 дней услуги за 6 месяц и датой отключения услуги будет, 01.08.11. Что подскажите?
Дата("25.06.11") + 30 = 25.07.11

=> про даты не до конца понял
">(Дата(ДатаОтключенияСтарая)+Дата((ДатаОплаты+(30*Месяцы)))
вобще что это получится "дата + дата"?

>СпрАбон.ДатаОтключения.Установить(ТекущаяДата(),(Дата(ДатаОтключенияСтарая)+Дата((ДатаОплаты+(30*Месяцы)))));
Если "человек платит абонентскую плату за определённое косичество дней, пусть их будет 30", то зачем умножать 30 на какие-то месяцы.

>заплотил допустим 25.06.11, значит услуга у него отключится  27.07.11, но при этом у него расчётный период предыдущего месяца был  такой 01.06.11 по 30.06.11. Получаеться что к 27.07.11 дано прибавить  ещё 5 дней услуги за 6 месяц и датой отключения услуги будет, 01.08.11.

Зачем прибавлять 30 к дате оплаты, потом смотреть конец предыдущего периода, потом вычислять разницу (5 дней) и опять ее прибавлять?
Нельзя сразу прибавить 30 к ДатаОтключенияСтарая?
Т.е. новая дата отключения:
СпрАбон.ДатаОтключения.Установить(ТекущаяДата(),ДатаОтключенияСтарая+30);

>Пока ПолучитьСтроку()=1 Цикл
>        СпрАбон.ВыбратьЭлементы();
Зачем по каждой строке документа перебирать весь справочник для того чтобы найти элемент с номером карты.
"НайтиПоРеквизиту" не катит?

>СпрАбон.ПолучитьЭлемент(НомерКарты)
это что за параметр? На этом месте должен быть "Режим поиска" (с учетом/без учета иерархии), причем здесь номер карты?."
Читают тему
(гостей: 1)

Быстрый переход