ДобавитьМесяц() неправильно прибавляет...

Форум 1С: Одинэс.Ру

Найти!

ДобавитьМесяц() неправильно прибавляет...

deefm
07.04.2009 - 09:29
Здравствуйте, перебираю док-ты в цикле и копирую их в след. месяце:
 
Док = СоздатьОбъект("Документ.ОказаниеУслуг");
    Док.ВыбратьДокументы(НачДата, КонДата);
    Пока Док.ПолучитьДокумент() = 1 Цикл
Док1 = СоздатьОбъект("Документ.ОказаниеУслуг");
Док1.Новый();
Док1.ДатаДок = ДобавитьМесяц(Док.ДатаДок,1);
...
     КонецЦикла;
 

Если документ был в последнем дне февраля (28февраля), то скопированный документ он создает в след.месяце 28марта (прибавляет месяц). Подскажите, как сделать, чтобы он записывал скопированные док-ты в таких случаях последним днем месяца???
К списку тем К списку форумов

Интересные темы

odines.ru
25.11.2024 - 00:57
Смотри также:
Печать внешнего файла
Как сделать что бы счет корреспондировал с пустым счетом?
установка флага на форме без атрибута программно

Re: ДобавитьМесяц() неправильно прибавляет...

di1978
1 - 07.04.2009 - 09:33
если док.датадок = КонМесяца(Док.ДатаДок) Тогда
Док1.ДатаДок = КонМесяца(ДобавитьМесяц(Док.ДатаДок,1));
Иначе
Док1.ДатаДок = ДобавитьМесяц(Док.ДатаДок,1);
КонецЕсли;

Re: ДобавитьМесяц() неправильно прибавляет...

roma n
2 - 07.04.2009 - 09:39
Есть засада с февралём.
Больше того, движек не давится если скормить ему ДобавитьМесяц('29.02.2009',1)
Вариант решения:
Дата2= ?(Дата1 = КонМесяца(Дата1),КонМесяца(ДобавитьМесяц(Дата1,1)),ДобавитьМесяц(Дата1,1))

Re: ДобавитьМесяц() неправильно прибавляет...

deefm
3 - 07.04.2009 - 09:41
(2) Да, вы правы, с февралем так и получилось: создал док-ты датой не 31марта, а 28марта :(

Re: ДобавитьМесяц() неправильно прибавляет...

deefm
4 - 07.04.2009 - 09:42
(2) а Дата2 в вашем решении, куда подставлять?
К списку тем К списку форумов

Добавить новое сообщение

Ваше имя:
Тема сообщения:
Сообщение:
« Ошибка при входе "Не определены параметры базы данных" амортизация относится к 0.10сч »
© 2009 Форум 1С: Одинэс.Ру