Вопрос № 53118: Здравствуйте
Я создал докумен, в котором есть дата заключения договора, срок месяцев договора и срок дней договора, мне нужно написать в модуле формы такой алгоритм, который, по реквизиту ДатаЗаключения и сроку договора(Срок месяцев и срок дней) ...
Вопрос № 53.118
Здравствуйте
Я создал докумен, в котором есть дата заключения договора, срок месяцев договора и срок дней договора, мне нужно написать в модуле формы такой алгоритм, который, по реквизиту ДатаЗаключения и сроку договора(Срок месяцев и срок дней) высчитывает дату окончания договора.
Отвечает: Vizli
Здравствуйте, Терсков Алексей Николаевич!
Проверьте такой алгоритм:
ДатаОкончанияДоговора=ДобавитьМесяц(ДатаЗаключения, СрокМесяцев)+СрокДней;
Ответ отправил: Vizli (статус: 1-ый класс)
Ответ отправлен: 24.08.2006, 14:28 Оценка за ответ: 4 Комментарий оценки: Количество месяцев прибавилось, а дней - не прибавилось ....
Отвечает: Karanskiy Arkadiy
Здравствуйте, Терсков Алексей Николаевич!
Думаю, что лучше будет решить эту проблемму путем учета срока договора хранением не количеством месяцев и дней, а только дней. Например: 53 дня, тогда в таком случение обработка элементарная ДатаОкончания = Дата(ДатаЗаключения) + КоличествоДней;, но если Вы все таки хотите хранить и количество месяцев, то здесь есть проблеммки, хотя если надо знать приблизительные результаты, то можно использовать так: ДатаОкончания = Дата(ДатаЗаключения) + КоличествоДней + (ЧислоМесяцев*30);, но если надо очень точно знать
результат, то надо:
1) проверять в каком мес. был заключен договор, потом считать кол-во дней до конца этого месяца.
2) смотреть каждый месяц и узнавать сколько дней в этом месяце
Короче, возьни хватит.
Успехов!!!
Ответ отправил: Karanskiy Arkadiy (статус: 3-ий класс)
Ответ отправлен: 24.08.2006, 15:43 Оценка за ответ: 4 Комментарий оценки: ДатаОкончания=ДобавитьМесяц(ДатаНачала,СрокМесяцев)+СрокДней; Эта штука работает =) и дни - тоже прибавляет =) причем, если прибавить 365 дней, то это аналогично прибавлению одного года, т.е. в дате изменится год ...