1С запрос значение дата

Для указания Даты и Времени в запросе предназначена функция ДАТАВРЕМЯ(

ДАТАВРЕМЯ ( , , [, , , ] )
Значения типа дата задаются с помощью ключевого слова ДАТАВРЕМЯ, после которого в скобках последовательно указываются год, месяц, день, час, минута, секунда. Последние три указывать необязательно.

Максимальная дата которую возможно задать при помощи литерала ДАТАВРЕМЯ31.12.3999 23:59:59.

С помощью языка запросов 1С 8 решаются практически все задачи по получению данных в платформе 1С 8.3 и 8.2. Дата — один из часто используемых типов данных. Рассмотрим, как использовать дату в запросах 1С.

Проверка на пустую дату в запросе 1С 8.3

Проверим значение на пустую дату в запросе 1С.

Например, отберем только не закрытые банковские счета из справочника. Критерий того, что они не закрытые, — наличие пустой даты в поле «ДатаЗакрытия»:

Получите 267 видеоуроков по 1С бесплатно:

ВЫБРАТЬ
БанковскиеСчета.Ссылка
ИЗ
Справочник.БанковскиеСчета КАК БанковскиеСчета
ГДЕ
БанковскиеСчета.ДатаЗакрытия = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)

Произвольная дата в языке запросов

Используя функцию ДатаВремя, помимо пустой даты можно указывать и любые другие произвольные даты.

Например, отберем все документы «Счет на оплату покупателю» за месяц, от 1 до 28 февраля:

ВЫБРАТЬ
СчетНаОплатуПокупателю.Ссылка
ИЗ
Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
ГДЕ
СчетНаОплатуПокупателю.Дата МЕЖДУ ДАТАВРЕМЯ(2015, 2, 1, 0, 0, 0) И ДАТАВРЕМЯ(2015, 2, 28, 23, 59, 59)

Текущая дата в запросе

К сожалению, в языке запросов нет аналога метода «ТекущаяДата()», поэтому чтобы получить это значение, его можно передать в запрос с помощью параметра:

Запрос = Новый Запрос;
Запрос.Текст = »
|ВЫБРАТЬ
| СчетНаОплатуПокупателю.Ссылка
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.Дата = &ТекущаяДата«;
Запрос.УстановитьПараметр(«ТекущаяДата», ТекущаяДата());

Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):

Читайте также:  Ремонт компьютерных блоков питания пошаговая инструкция

К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.

При написании запросов на языке 1С довольно часть встречается необходимость работы с переменными типа «Дата». В данной статье мы рассмотрим основные приемы — передача текущей даты, проверка на пустое значение, произвольная дата.

Текущая дата

При написании запросов зачастую необходимо сравнивать данные с текущей датой. Во встроенном языке 1С есть функция ТекущаяДата(). Она позволяет определить текущее время и дату на компьютере. Для произведения операций с текущей датой необходимо передавать в запрос значение этой функции в качестве параметра.

Ниже представлен запрос, выбирающий все файлы, присоединенные к авансовым отчетам с датой создания до настоящего момента:

ПримерЗапроса = Новый Запрос;
ПримерЗапроса.Текст =«
|ВЫБРАТЬ
| АвансовыйОтчетПрисоединенныеФайлы.Ссылка
|ИЗ
| Справочник.АвансовыйОтчетПрисоединенныеФайлыКАК АвансовыйОтчетПрисоединенныеФайлы
|ГДЕ
| АвансовыйОтчетПрисоединенныеФайлы.Дата Произвольная дата

Рассмотренная выше функция позволяет сравнивать и, следовательно, производить отбор по любому периоду. Такой способ позволяет задать в запросе жесткий отбор без использования дополнительных параметров.

Обратите внимание, что используя эту функцию в примере выше, в качестве входных параметров мы передавали только три числа (год, месяц, день). Последние три (час, минута, секунда) не являются обязательными и при отсутствии заменяются на «0», то есть начало дня.

В рамках данного примера будут получены все файлы, присоединенные к авансовым отчетам до конца прошлого 2016 года. В связи с этим мы укажем час, минуту и секунду, чтобы сравнивать моментом времени «31 декабря 2016 г 23:59:59».

ВЫБРАТЬ
АвансовыйОтчетПрисоединенныеФайлы.Ссылка
ИЗ
Справочник.АвансовыйОтчетПрисоединенныеФайлы КАК АвансовыйОтчетПрисоединенныеФайлы
ГДЕ
АвансовыйОтчетПрисоединенныеФайлы.Дата Пустая дата

Осуществить проверку переменной на то, содержит ли она в себе незаполненную дату проще всего обычным сравнением. В этом примере мы, используя запрос, выберем все поступления денежных средств на р/с, у которых не заполнена входящая дата.

ВЫБРАТЬ
ПоступлениеНаРасчетныйСчет.Ссылка
ИЗ
Документ.ПоступлениеНаРасчетныйСчет КАК ПоступлениеНаРасчетныйСчет
ГДЕ
ПоступлениеНаРасчетныйСчет.ДатаВходящегоДокумента = ДАТАВРЕМЯ(1, 1, 1)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock detector