Выбрать один день в году

[Alimir_BootModal_Login]
Язык запросов 1С 8.3 для начинающих программистов: функции для работы с датой
Функции для работы с датой в запросе
Мы уже сталкивались с этим типом, например, когда выводили реквизит Дата у документов.
И самая первая функция, которую нам следует разобрать — это, конечно же, ДАТАВРЕМЯ.
Назначение функции ДАТАВРЕМЯ состоит в конструировании даты по её отдельным компонентам.
вернёт нам таблицу с типом поля ДАТА и значением 1 февраля 2013 года:
Значение часов, минут и секунд равно нулю, так как мы их не указали при вызове функции (последние три параметра).
Отдельно обращаю ваше внимание на текст предыдущего запроса. Мы получаем таблицу как бы «из воздуха», не указывая в секции ИЗ источник данных.
Например, так (поля типа ЧИСЛО):
Или так (поля типа СТРОКА):
Или вообще вот так (поля разных типов):
Вернёмся к функциям для работы с датой.
Принимает параметр типа ДАТА. Возвращает год.
Функция КВАРТАЛ
Принимает параметр типа ДАТА. Возвращает номер месяца даты (целочисленное значение от 1 до 12).
Функция ДЕНЬГОДА
Принимает параметр типа ДАТА. Возвращает номер дня в месяце (целочисленное значение от 1 до 31).
Функция НЕДЕЛЯ
Принимает параметр типа ДАТА. Возвращает номер дня недели (целочисленной значение от 1 (понедельник) до 7 (воскресенье)).
Функция ЧАС
Принимает параметр типа ДАТА. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь. Возвращает минуты часа (целочисленное значение от 0 до 59).
Функция СЕКУНДА
Принимает параметр типа ДАТА и тип периода (одно из значений МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ).
Функция КОНЕЦПЕРИОДА
Функция предназначена для получения даты конца периода по дате, принадлежащей этому периоду. Вы читаете ознакомительную версию урока, полноценные уроки находятся здесь.
Принимает параметр типа ДАТА, тип увеличения (одно из значений СЕКУНДА, МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ) и величину увеличения (целочисленное значение).
Функция РАЗНОСТЬДАТ
Функция предназначена для получения разницы между двумя датами (вторым и первым параметром).
Отдельно обращаю ваше внимание, что в функции можно передавать не только даты, сконструированные при помощи ДАТАВРЕМЯ, но и свойства объектов, которые мы запрашиваем из базы, имеющие тип ДАТА.
Вот пример:
Ещё раз: когда мы конструируем дату при помощи функции ДАТАВРЕМЯ, задавая конкретные значения года, месяца и числа, то получаем значение даты, которое жёстко прописано в коде и уже никогда не изменится.
Поэтому даты, заданные первым способом называются константными (то есть постоянными), а вторые нет.
