Показано с 1 по 4 из 4
-
26.03.2017, 11:26 #1
- Регистрация
- 10.04.2014
- Сообщений
- 33
- Сказал(а) спасибо
- 3
- Поблагодарили 5 раз(а) в 3 сообщениях
Предыдущая Дата в печатной форме
Добрый день профессионалы!
Помогите пожалуйста разобраться с предыдущей датой, как возможно это реализовать?
Задача стоит такая, в печатной форма Заявления нужно вместо текущей даты, нужна дата 3-х дневной давности, это реализовано таким образомКод:Функция ДатаЗаявления() Сегодня = ТекущаяДата (); ПредыдущаяДата = Сегодня - 72 * 60 * 60; Если ПредыдущаяДата = ДеньНедели Возврат (ПредыдущаяДата); КонецФункции
За ранее благодарен!
-
26.03.2017, 13:26 #2
- Регистрация
- 29.01.2010
- Сообщений
- 1212
- Сказал(а) спасибо
- 30
- Поблагодарили 261 раз(а) в 245 сообщениях
Re: Предыдущая Дата в печатной форме
Такие задачи решаются через запрос к регистру сведений "Рабочий календарь". Именно там находится актуальная информация про выходные и праздничные дни.
потому как к твоему алгоритму "прикрутить" обработку "Суббота и воскресенье" - легко, но вот для учета праздничных (и их переносов) - нужно работать уже с произВодственнымКалендаре м
-
08.04.2017, 14:21 #3
- Регистрация
- 21.01.2011
- Адрес
- Россия, РО
- Сообщений
- 52
- Сказал(а) спасибо
- 6
- Поблагодарили 9 раз(а) в 6 сообщениях
Re: Предыдущая Дата в печатной форме
Та нифига, в запросе можно получить день недели, и если это например 6 - суббота или 7-воскресенье, то проставлять 5 - пятница, ну или выводить текстом
-
08.04.2017, 14:24 #4
- Регистрация
- 21.01.2011
- Адрес
- Россия, РО
- Сообщений
- 52
- Сказал(а) спасибо
- 6
- Поблагодарили 9 раз(а) в 6 сообщениях
Re: Предыдущая Дата в печатной форме
//Это так для примера
лТекст = "
|ВЫБРАТЬ
| Док.Ссылка,
| ВЫБОР
| КОГДА ДЕНЬНЕДЕЛИ(Док.Дата) = 6
| ИЛИ ДЕНЬНЕДЕЛИ(Док.Дата) = 7
| ТОГДА ""Это выходной день""
| ИНАЧЕ ""Рабочая дата""
| КОНЕЦ КАК Поле1
|ИЗ
| Документ.Ссылка КАК Док
|";
лЗапрос = Новый Запрос(лТекст);
// Присвоение значений переменным параметров.
// Установка параметров.
лВыборка = лЗапрос.Выполнить().Выбрать ();
Пока лВыборка.Следующий() Цикл
//ЗДЕСЬ ОБРАБАТЫВАЕШЬ РЕЗУЛЬТАТ!!!!!!!!!!!!!!!!!!!!!!!!!
КонецЦикла;
Также в расчете скорее всего пригодится функция по работе с датами "ДОБАВИТЬКДАТЕ" (обрати на это вниание!!!!!!!!!!!!!)
Социальные закладки