Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Оптимизация запроса, доставшегося в наследство

Оптимизация запроса, доставшегося в наследство
Я
   1dvd
 
08.09.16 - 14:10
Приветствую всех!
Наткнулся на несколько выражений в запросе. Вот кусок Запроса


ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
                ТиповойДвиженияССубконто.Период КАК Период,
                ТиповойДвиженияССубконто.Регистратор КАК Регистратор,
                ТиповойДвиженияССубконто.СчетДт КАК СчетДт,
                ТиповойДвиженияССубконто.СчетКт КАК СчетКт,
                ТиповойДвиженияССубконто.СубконтоДт1 КАК СубконтоДт1,
                ТиповойДвиженияССубконто.СубконтоДт2 КАК СубконтоДт2,
                ТиповойДвиженияССубконто.СубконтоКт1 КАК СубконтоКт1,
                ТиповойДвиженияССубконто.СубконтоКт2 КАК СубконтоКт2,
                ТиповойДвиженияССубконто.Организация КАК Организация,
                СУММА(ТиповойДвиженияССубконто.Сумма) КАК Сумма,
                ТиповойДвиженияССубконто.Шлюз КАК Шлюз
            ИЗ
                РегистрБухгалтерии.Типовой.ДвиженияССубконто(
                        &НачалоПериода,
                        &КонецПериода,
                        (ВЫРАЗИТЬ(СубконтоКт1 КАК Справочник.Контрагенты)) = &Контрагент
                            И (ВЫРАЗИТЬ(СубконтоКт2 КАК Справочник.ДоговорыКонтрагентов)) = &Договор
                            И (ВЫРАЗИТЬ(Счет.Код КАК СТРОКА(4))) = "3315"
                            И ВЫРАЗИТЬ(Регистратор КАК Документ.QD) ССЫЛКА Документ.QD
                            И (ВЫРАЗИТЬ(СчетДт.Код КАК СТРОКА(4))) = "1420"
                            И (ВЫРАЗИТЬ(СчетКт.Код КАК СТРОКА(4))) = "3315"
                            И Организация = &Организация
                            И Шлюз В ("25264"),
                        ,
                        ) КАК ТиповойДвиженияССубконто


Скажите, пожалуйста. Нафига такие навороты?

Почему ВЫРАЗИТЬ(СубконтоКт1 КАК Справочник.Контрагенты)) = &Контрагент
а не СубконтоКт1 = &Контрагент ?

Почему ВЫРАЗИТЬ(Регистратор КАК Документ.QD) ССЫЛКА Документ.QD
а не Регистратор ССЫЛКА Документ.QD ?

Почему Шлюз В ("25264")
а не Шлюз = "25264" ?

Все эти обороты как-то ускоряют запрос? Нафига это всё?
 
 
   Fragster
 
1 - 08.09.16 - 14:11
Шлюз В - возможно потому что раньше их было несколько
   Метранпаж
 
2 - 08.09.16 - 14:11
Последний - тут надо телепатом быть, а первые два - абсолютно правильны
   vicof
 
3 - 08.09.16 - 14:11
п..ц
   Fragster
 
4 - 08.09.16 - 14:11
"выразить" потому что кто-то что-то слышал про поля составного типа, без обращения через точку к подчиненным полям - убирай
   Fragster
 
5 - 08.09.16 - 14:12
(2) первые два - первый избыточен, второй всегда истина...
   Fragster
 
6 - 08.09.16 - 14:12
а за названия вида qd вообщ отрубыть все надо
   1dvd
 
7 - 08.09.16 - 14:12
(1) ОК. Но, я так понимаю, нисколько это не ускоряет?


и ещё вот это
(ВЫРАЗИТЬ(СчетДт.Код КАК СТРОКА(4))) = "1420"

Я конечно, понимаю, что челу влом было передавать параметры в запрос. Но, это ведь замедляет его. Не?
   Метранпаж
 
8 - 08.09.16 - 14:13
(5) второй может быть и нулом.
   Fragster
 
9 - 08.09.16 - 14:13
собственно, с выразить счет.код как строка  тоже нафиг, передать искомые счета сразу ссылками как параметры
   Fragster
 
10 - 08.09.16 - 14:13
(8) не может быть
 
 Рекламное место пустует
   Метранпаж
 
11 - 08.09.16 - 14:14
(10) А если там регистратор не Документ.QD ?
   1dvd
 
12 - 08.09.16 - 14:14
(10) факт, отбирает только документы QD
   Метранпаж
 
13 - 08.09.16 - 14:14
ну не нул, а неопределено
   1dvd
 
14 - 08.09.16 - 14:15
(2) идёт отбор по конкретным счетам Дт и Кт. Разве там может быть другое субконто?
   CMblCL
 
15 - 08.09.16 - 14:17
(14) Может у счета субконто меняли?
   1dvd
 
16 - 08.09.16 - 14:19
(15) может, и меняли, ХЗ. Но, навряд ли

а по поводу регистратора. Зачем там ВЫРАЗИТЬ?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует