Имя: Пароль:
1C
1С v8
СКД, оптимизатор запроса
0 Полотенчик
 
07.11.12
12:07
Есть отчет на СКД, в запросе с десяток временных таблиц. Иногда надо формировать отчет с отбором по одному полю. В итоге оптимизатор запроса СКД в окончательный запрос вставляет отбор по этому полю в несколько промежуточных временных таблиц, а не только в итоговую таблицу - из-за этого отчет формируется некорректно.
Как побороть оптимизатор СКД?
1 DrunkAnimal
 
07.11.12
12:09
в запросе поля описаны?
2 Maxus43
 
07.11.12
12:10
он своей жизнью живёт, едиинственное влияние емнип - галки Обязательная. Если он решит что не надо оно при данной выборке - не включит
3 Полотенчик
 
07.11.12
12:12
(1) где? каким образом? запрос большой..
4 Полотенчик
 
07.11.12
12:13
(2) в конструкторе запроса на закладке "Компоновка данных" -- "Поля"? нет, там ничего не описано
5 vmv
 
07.11.12
12:20
(4) это в вычисляемых полях галка "Обязательное"

по своему опыту

все вычисляемые значения в запросах истоника типа ЗНАЧЕНИЕ("Тралаляля") - загонял в параметры

когда делал для вычисляемого поля, например

СчетВид...Счет.Вид... еще и ресурс

СчетВид...СчетВид

то компоновка шуршит быстрее
6 Maxus43
 
07.11.12
12:23
(4) на закладке компановка, закладка Таблицы, там галка Обязательная
7 vmv
 
07.11.12
12:25
(6) да, я соврал
8 эцп
 
07.11.12
12:26
(0) Нужно сделать так, чтобы в последнем запросе поля, по которым будет отбор, имели другое название, чем в регистрах, из которых производится выборка.
9 Defender aka LINN
 
07.11.12
12:28
(0) Галка "Автозаполнение". Кто будет утверждать иначе - ничего не понимают в СКД :)
10 Defender aka LINN
 
07.11.12
12:28
(6) Месье имеет хотя бы примерное представление о том, что делает этот флаг?
11 Полотенчик
 
07.11.12
12:30
(9) галка стоит. а надо все заполнять вручную?
12 Defender aka LINN
 
07.11.12
12:34
(11) Вот потому и. Снимай ее и начинай таки знакомство с закладкой "Компоновка" конструктора запросов.
13 Полотенчик
 
07.11.12
12:47
(12)ок. вечером буду знакомиться, завтра буду пробовать
stay tuned..
14 Полотенчик
 
07.11.12
12:58
(8) Действительно, изменил в запросе в итоговой таблице псевдоним у поля, по которому делают отбор и в результате оптимизатор добавил отбор только в конечную таблицу, а промежуточные временные не трогал
15 Maxus43
 
07.11.12
13:03
(10) мьсе тока догадывается)