|
Параметры запроса
| ☑ |
0
SkAt
22.10.18
✎
11:56
|
Доброго времени суток! Собственно, может ответ очевидный, но я никак не могу сообразить. Есть Запрос вида
ВЫБРАТЬ
Док.Ссылка КАК Ссылка
...
ГДЕ
Док.Дата >= ДАТАВРЕМЯ(&Год,1,1,0,0,0)
И Док.Дата <= ДАТАВРЕМЯ(&Год,1,1,23,59,59)
Неверный синтаксис запроса. Как мне передавать в качестве параметра год?
Заранее спасибо
|
|
1
Buster007
22.10.18
✎
11:57
|
а что полностью дату нельзя передать, раз ты год передаешь?)
|
|
2
Buster007
22.10.18
✎
11:59
|
я даже никогда не пробовал применить как ты, но подозреваю, что в эту функцию нельзя передать параметры.
|
|
3
Ненавижу 1С
гуру
22.10.18
✎
12:01
|
(2) это не функция вообще
|
|
4
ktibo
22.10.18
✎
12:07
|
Где Год(Док.Дата) = &Год И Месяц(Док.Дата) = 1 И День(Док.Дата)= 1
|
|
5
Zmich
22.10.18
✎
12:09
|
(0). Можно так:
Запрос.Текст = "... ГДЕ Док.Дата >= ДАТАВРЕМЯ(" + ПеременнаяГод + ",1,1,0,0,0) И ..."
в таком случае не понадобится вообще параметр Год.
|
|
6
Alexandr_U1982
22.10.18
✎
12:15
|
(0)
Е.Ю. Хрусталева. "Язык запросов 1С6Предприятия 8", 2013 г.
Глава 4. Оптимизация запросов
Не использовать в запросе функции от параметров
В языке запросов существуют разнообразные функции – функции для работы со
строками, функции для работы с датами и т. п. Нежелательно вычислять в запросе
значение этих функций от переданных в запрос параметров.
...
Но такой запрос будет работать неоптимально, так как СУБД «не поймет», что в условии запроса
используется константа (значение параметра Дата).
|
|
7
SkAt
22.10.18
✎
12:16
|
(5) Отлично! То что нужно, спасибо. Вечно отношусь к тексту запроса не как к тексту))
|
|
8
Alexandr_U1982
22.10.18
✎
12:18
|
+(6)Дату лучше сформировать до выполнения запроса и передать в запрос в качестве параметра.
|
|
9
1Сергей
22.10.18
✎
12:18
|
Правильный ответ в (1)
|
|