Функция получает при помощи запроса дату через указанный промежуток
// Возращает дату через указанное количество в указанном типе
//
// Параметры:
// Дата1 - Дата от которой будет производится исчисление
// Кол - Количество прибавляемых или убавляемых единиц указанного типа
// Тип - Тип исчисления, поддерживается: секунда, минута, день, час, неделя, меняс, год
// Знак - При значении "+" прибавляет к дате указанное количество единиц указанного типа
// При значении "-" отнимает от даты указанное количество единиц указанного типа
//
// По умолчанию тип разницы "День", знак равен "+".
// Указывать тип можно в любом регистре!
// Допускается передавать отрицательное количество единиц в поле "Кол" и опускании значения "Знак"
// В таком случае функция будет считать значение параметра знак равным "-"
//
Функция ПолучитьДатуЧерез(Дата1, Кол, Знач Тип = "день", Знач Знак = "") Экспорт
Если Кол = 0 Тогда
Возврат Дата1;
КонецЕсли;
Тип = НРег(Тип);
Если Кол < 0 и НЕ ЗначениеЗаполнено(Знак) Тогда
Кол = Кол * -1;
Знак = "-";
ИначеЕсли НЕ ЗначениеЗаполнено(Знак) Тогда
Знак = "+";
КонецЕсли;
ЗнакПлюс = ?(Знак = "+", Истина, Ложь);
Если НЕ ЗнакПлюс Тогда
Кол = Кол * -1;
КонецЕсли;
Если Тип = "сек" или Тип = "секунда" или Тип = "секунды" Тогда Тип = "СЕКУНДА"
ИначеЕсли Тип = "мин" или Тип = "минута" или Тип = "минуты" Тогда Тип = "МИНУТА"
ИначеЕсли Тип = "час" или Тип = "часы" Тогда Тип = "ЧАС"
ИначеЕсли Тип = "день" или Тип = "дней" или Тип = "дни" Тогда Тип = "ДЕНЬ"
ИначеЕсли Тип = "неделя" или Тип = "недель" или Тип = "недели" Тогда Тип = "НЕДЕЛЯ"
ИначеЕсли Тип = "месяц" или Тип = "месяцев" или Тип = "месяцы" Тогда Тип = "МЕСЯЦ"
ИначеЕсли Тип = "год" или Тип = "лет" Тогда Тип = "ГОД"
Иначе Возврат 0;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Дата", Дата1);
Запрос.УстановитьПараметр("Кол", Кол);
Запрос.Текст= "ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&Дата, ДЕНЬ, &Кол) КАК Значение";
Запрос.Текст = СтрЗаменить(Запрос.Текст, "ДЕНЬ", Тип);
Выборка = Запрос.Выполнить().Выбрать();
Возврат ?(Выборка.Следующий(), Выборка.Значение, 0);
КонецФункции
Орфографическая ошибка в Возращает: Возращает Орфографическая ошибка в меняс: меняс