HelpF.pro

Как по Номеру Недели Года получить Дату

Код 1C v 8.х
  //Как из номера, числа недели вернуть первую Дату этой недели?
Функция ДатаПоНомеруНедели(НомерНедели, Год = Неопределено)
Возврат НачалоНедели(Дата(?(Год=Неопределено, Год(ТекущаяДата()), Год),1,1)+(НомерНедели-НеделяГода(Дата(?(Год = Неопределено, Год(ТекущаяДата()), Год), 1, 1))) * 604800);
КонецФункции

//ПРИМЕРЫ ОБРАЩЕНИЯ:
ТекДата = ТекущаяДата();
Сообщить("Текущая Дата - "+Строка(ТекДата));
Сообщить("Неделя года - "+Строка(НеделяГода(ТекДата)));
Сообщить("--------------------------");
Сообщить(ДатаПоНомеруНедели(НеделяГода(ТекДата)));
Сообщить(ДатаПоНомеруНедели(НеделяГода(ТекДата), 2005));

// В окно сообщений будет выведено:
//
// Текущая Дата - 20.08.2010 0:00:00
// Неделя года - 34
// ----------------------------
// 16.08.2010 0:00:00
// 15.08.2005 0:00:00

Тема обсуждения на Mista.ru
Опубликовано на сайте: https://HelpF.pro
Прямая ссылка: https://HelpF.pro/faq8/view/807.html