Дата в запросах 1С 8.3
С помощью языка запросов 1С 8 решаются практически все задачи по получению данных в платформе 1С 8.3. Дата — один из часто используемых типов данных. Рассмотрим, как использовать дату в запросах 1С.
Содержание
Проверка на пустую дату в запросе 1С 8.3
Проверим значение на пустую дату в запросе 1С.
Например, отберем только не закрытые банковские счета из справочника. Критерий того, что они не закрытые, — наличие пустой даты в поле «ДатаЗакрытия»:
ВЫБРАТЬ
БанковскиеСчета.Ссылка
ИЗ
Справочник.БанковскиеСчета КАК БанковскиеСчета
ГДЕ
БанковскиеСчета.ДатаЗакрытия = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
Произвольная дата в языке запросов
Используя функцию ДатаВремя, помимо пустой даты можно указывать и любые другие произвольные даты.
Например, отберем все документы «Счет на оплату покупателю» за месяц, от 1 до 28 февраля:
ВЫБРАТЬ
СчетНаОплатуПокупателю.Ссылка
ИЗ
Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
ГДЕ
СчетНаОплатуПокупателю.Дата МЕЖДУ ДАТАВРЕМЯ(2015, 2, 1, 0, 0, 0) И ДАТАВРЕМЯ(2015, 2, 28, 23, 59, 59)
Текущая дата в запросе
К сожалению, в языке запросов нет аналога метода «ТекущаяДата()», поэтому чтобы получить это значение, его можно передать в запрос с помощью параметра:
Запрос = Новый Запрос;
Запрос.Текст = »
|ВЫБРАТЬ
| СчетНаОплатуПокупателю.Ссылка
|ИЗ
| Документ.СчетНаОплатуПокупателю КАК СчетНаОплатуПокупателю
|ГДЕ
| СчетНаОплатуПокупателю.Дата = &ТекущаяДата«;
Запрос.УстановитьПараметр(«ТекущаяДата», ТекущаяДата());
Если вы только начинаете программировать в 1С или просто хотите систематизировать свои знания - попробуйте Школу программирования 1С нашего друга Владимира Милькина. Пошаговые и понятные уроки даже для новичка с поддержкой учителя.
Попробуйте бесплатно по ссылке >>
Если Вы начинаете изучать 1С программирование, рекомендуем наш бесплатный курс (не забудьте подписаться на YouTube — регулярно выходят новые видео):
К сожалению, мы физически не можем проконсультировать бесплатно всех желающих, но наша команда будет рада оказать услуги по внедрению и обслуживанию 1С. Более подробно о наших услугах можно узнать на странице Услуги 1С или просто позвоните по телефону +7 (499) 350 29 00. Мы работаем в Москве и области.
СПРОСИТЕ в комментариях!
Дмитрий:
Вряд ли чего-то будет найденио таким образом:
СчетНаОплатуПокупателю.Дата = &ТекущаяДата
Дата и справа и слева — это дата и время. Без МЕЖДУ и НАЧАЛОПЕРОИДА и КОНЕЦПЕРИОДА не обойтись.
Гр13Ок:
Если точность будет до секунды, то совпадет. Но нужно брать НачалоПериода(СчетНаОплатуПокупателю.Дата,День) = НачалоПериода(&ТекущаяДата,День)
1с хрень:
Хрень, не указано какие цифры в функцию сувать: где год, месяц, день и тд