|
СКД. Логика использования полей в запросе
| ☑ |
0
Solitar
09.09.18
✎
12:34
|
Всем привет.
Если в СКД в выбранных полях снять для поля "Использование", то в результирующем запросе данного поля не будет. Это понятно и логично.
Но как убрать запрос к этому полю во всех других запросах (временных таблицах и т.д.), которые используется в итоговом ? Псевдноим у поля везде одинаковый.
|
|
1
Sasha_H
09.09.18
✎
12:45
|
а зачем его оттуда убирать?...
Функциональной опцией разве только или вручную удалить из запроса.
|
|
2
Solitar
09.09.18
✎
12:54
|
(1) чтобы в итоговом запросе не было связи по этому полю
|
|
3
Sasha_H
09.09.18
✎
13:02
|
В отчете добавьте Параметр: ВыводитьРезультатСДопСвязью (например).
В самом запросе напишите. ВЫБОР КОГДА &ВыводитьРезультатСдопСвязью ТОГДА .... СоединениеВИтоговомЗапросе = КакБыло
Иначе
ИСТИНА //игнорируем соединение
КОНЕЦ
|
|
4
Sasha_H
09.09.18
✎
13:03
|
Это конечно для оптимизатора ЗЛО... но результат будет как хотели
|
|
5
Solitar
09.09.18
✎
13:17
|
(3) очень не красивое решение. придется программно устанавливать этот параметр в зависимости от того, выбраное ли это поле или нет, или же пользователю нужно будет устанавливать этот параметр в значение ИСТИНА или ЛОЖЬ.
так же в одной из ВТ анализируются остатки по этому полю. И по идее, если это поле не выбрано, я не хочу смотреть остатки по этому полю.
|
|
6
Sasha_H
09.09.18
✎
13:23
|
(5) Зачем его устанавливать программно? Если достаточно это вывести на параметры и дать этот флаг пользователю в параметрах указать!
|
|
7
Sasha_H
09.09.18
✎
13:24
|
Красивым решением в таком случае будет два запроса и программно манипулировать.
- функциональная опция
- либо через параметр.
|
|
8
Solitar
09.09.18
✎
13:40
|
(6) а если потом такая же проблема возникнет с другим полем, то придется делать таких параметров столько, сколько ситуаций не отрабатывается....
и связь по этому полю в других ВТ тоже есть.
у меня ощущение, что должен же быть какой то простой выход из ситуации.
|
|