|
Параметры запроса | ☑ | ||
---|---|---|---|---|
0
CyberDream
08.12.11
✎
17:11
|
Есть условие в запросе вида:
|ГДЕ | Номенклатура В(&ВыбНоменклатура) В параметр ВыбНоменклатура подставляются значения из списка значения, расположенного в настройках отчета. Если пользователь ничего не выбрал в списке, отчет ничего не выбирает. Теперь вопрос, возможно ли сделать так, чтобы при пустом списке выбирались все возможные варианты. Удалять условие из текста запроса при пустом списке не предлагать. |
|||
1
rrunover
08.12.11
✎
17:12
|
(0) >>Удалять условие из текста запроса при пустом списке не предлагать.
А почему? |
|||
2
mirosh
08.12.11
✎
17:14
|
Вместо
|ГДЕ | Номенклатура В(&ВыбНоменклатура) пишем "+УсловиеДляНоменклатуры. Предварительно записываем. Если ЗначениеЗаполнено(ВыбНоменклатура) Тогда // не выбрал значения УсловиеДляНоменклатуры =""; Иначе УсловиеДляНоменклатуры = " |ГДЕ | Номенклатура В(&ВыбНоменклатура)"; КонецЕсли; |
|||
3
CyberDream
08.12.11
✎
17:14
|
(1) потому что, интересует другой вариант, если кто-то знает.
|
|||
4
mirosh
08.12.11
✎
17:14
|
(2) там вместо точки ";", конечно же.
|
|||
5
CyberDream
08.12.11
✎
17:14
|
(2) это сейчас так работает
|
|||
6
mirosh
08.12.11
✎
17:15
|
(2) вернее *не значение заполнено
|
|||
7
CyberDream
08.12.11
✎
17:15
|
а хочется, (нечаянно вспомнил 7-ный вариант), не менять текст запроса.
|
|||
8
PVV65
08.12.11
✎
17:16
|
(7) используй СКД (там это реализовано).
|
|||
9
mirosh
08.12.11
✎
17:16
|
(5) тогда это будет извращение с несколькими запросами в пакете, не надо оно тебе
|
|||
10
Жан Пердежон
08.12.11
✎
17:17
|
(7) открой для себя построитель запроса (отчета)
|
|||
11
Жан Пердежон
08.12.11
✎
17:18
|
за 3 года давно пора
|
|||
12
YF
08.12.11
✎
17:19
|
{ГДЕ
Номенклатура В(&ВыбНоменклатура) } |
|||
13
tvitals
08.12.11
✎
17:23
|
На вскидку, но думаю можно и лучше
|ГДЕ | Номенклатура В(&ВыбНоменклатура) |ИЛИ | НЕ Истина В | (ВЫБРАТЬ | Истина | ИЗ | Справочник.Номенклтура КАК Номенклтура | ГДЕ | Номенклатура В(&ВыбНоменклатура) | ) |
|||
14
tvitals
08.12.11
✎
17:24
|
Истина наверное лучше заменить на 1
|
|||
15
Ненавижу 1С
гуру
08.12.11
✎
17:26
|
(13) бред
|
|||
16
Arseny
08.12.11
✎
17:27
|
А почему в иерархии не использовать? тогда как раз и будет, если пустое значение то все
|
|||
17
mirosh
08.12.11
✎
17:29
|
(16) серьезно?
|
|||
18
Arseny
08.12.11
✎
17:31
|
(17) Это сарказм?
|
|||
19
Ненавижу 1С
гуру
08.12.11
✎
17:32
|
(16) не будет
|
|||
20
mirosh
08.12.11
✎
17:33
|
(18) нет, не сарказм, я просто не знал о такой фишки выражения В ИЕРАРХИИ и считаю, что это не поможет
|
|||
21
Arseny
08.12.11
✎
17:34
|
(19) Что же я делаю не так? Почему у меня это работает?
|
|||
22
YAGolova
08.12.11
✎
17:35
|
Номенклатура В(&ВыбНоменклатура) или &ПоВсем
Запрос.Установитьпараметр("ПоВсем", СпискоНоменклатуры.Количество() = 0) я всегда так делаю |
|||
23
Ненавижу 1С
гуру
08.12.11
✎
17:35
|
(21) пустой список там не прокатит, вот пустая ссылка или список, содержащий пустую ссылку - да
|
|||
24
Arseny
08.12.11
✎
17:36
|
Сейчас проверил в консоли запросов:
ВЫБРАТЬ Номенклатура.Ссылка ИЗ Справочник.Номенклатура КАК Номенклатура ГДЕ Номенклатура.Ссылка В иерархии (&Ссылка) если передаю в ссылку пустую ссылку, то возвращает весь справочник |
|||
25
Ненавижу 1С
гуру
08.12.11
✎
17:37
|
(24) но там передается список, короче см (23)
|
|||
26
Arseny
08.12.11
✎
17:38
|
(23) точно, ну тогда можно просто передавать в качестве параметра или копию списка или если список пустой в копию добавлять значение с пустой ссылкой
|
|||
27
tvitals
08.12.11
✎
18:15
|
(15) В чем бред? Реализвация дурацкая, но работать точно будет!
|
|||
28
Ненавижу 1С
гуру
08.12.11
✎
22:53
|
(27) работать не будет, по-моему
|
|||
29
tvitals
09.12.11
✎
13:25
|
(28) Попробуй...
|
|||
30
Ненавижу 1С
гуру
09.12.11
✎
13:26
|
(29) ну смоитри, что будет если номенклатура не в списке, тогда?
|
|||
31
tvitals
09.12.11
✎
13:29
|
Принцип следующий:
Если есть хоть одна номенклатура но подзапрос не будет пустой, и будет содержать в себе несколько строк с начением 1. Далее проверяем, что НЕ 1 В (Получившийся список). В итоге когда списко пустой, значение НЕ 1 В(...) будет давать истина, и выбрана будет вся номенклатура. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |