Ускоряем запрос к хозрасчетному #698101


#0 by web_profiler
Запрос достал уже - время выполнения 6 секунд. Подскажите, мож как-то его ускорить можно? ВЫБРАТЬ     ХозрасчетныйДвиженияССубконто.СубконтоКт1.НовыйВидАлкоголя КАК Код,     ХозрасчетныйДвиженияССубконто.Регистратор.Контрагент.ВидЛицензии
#1 by Yea-Yea
бомба!
#2 by Yea-Yea
ну-с хлопцы оптимизаторы, вперед!
#3 by web_profiler
я так подозреваю - проблема тут ХозрасчетныйДвиженияССубконто.Регистратор.Контрагент.ВидЛицензии КАК Кому
#4 by web_profiler
чем больше вложенность - тем тормознее
#5 by Ненавижу 1С
используйте вместо ГДЕ условия виртуальной таблицы
#6 by hhhh
да, за эту строчку в вас 80 пуль надо вогнать. Причем из крупнокалиберного пулемета.
#7 by ДенисЧ
А ВЫРАЗИЬТ где?
#8 by web_profiler
согласен, уже вытаскиваю
#9 by vicof
Да ты гений Виды субконто ограничь и приводу регистратор к нужному виду
#10 by Ненавижу 1С
Контрагента никак не вытащить из оборотов например?
#11 by vicof
+100
#12 by web_profiler
в смысле?
#13 by web_profiler
каким образом, подскажи, пожалуйста
#14 by Maxus43
ВЫРАЗИТЬ
#15 by vicof
Параметром виртуальной таблицы +
#16 by web_profiler
с 6 сек до 0.639
#17 by web_profiler
так где выразить использовать
#18 by web_profiler
ВЫБРАТЬ     ХозрасчетныйДвиженияССубконто.СубконтоКт1.НовыйВидАлкоголя КАК Код,
#19 by web_profiler
это 0.63 сек
#20 by web_profiler
куда ВЫРАЗИТЬ применить?
#21 by vicof
на регистратор
#22 by Адский плющ
Перепиши на таблицу "Обороты", это первое с чего надо начать, имхо.
#23 by web_profiler
Выразить(ХозрасчетныйДвиженияССубконто.СубконтоКт1.НовыйВидАлкоголя КАК чего???) Число что-ли?
#24 by web_profiler
ХЕЛП!!! куда ВЫРАЗИТЬ применить??? ВЫБРАТЬ     ХозрасчетныйДвиженияССубконто.СубконтоКт1.НовыйВидАлкоголя КАК Код,
#25 by Yea-Yea
условия в параметры виртуальной таблицы, а "СубконтоКт1.НовыйВидАлкоголя = &Код" заменить предварительным получением списка значений субконто по условию
#26 by web_profiler
ВЫРАЗИТЬ(ХозрасчетныйДвиженияССубконто.Регистратор.Контрагент.ВидЛицензии КАК СТРОКА) КАК Кому процес не ускорило
#27 by vicof
Чо кричишь, как маленький? в все написано
#28 by web_profiler
сделал
#29 by vicof
А ты почитать что-нибудь пробовал про оптимизацию? Про составные типы, например.
#30 by vicof
+ или надо разжевать и в рот положить?
#31 by web_profiler
:) если не трудно
#32 by H A D G E H O G s
СУММА(ВЫРАЗИТЬ(ХозрасчетныйДвиженияССубконто.СубконтоКт1 как Справочник.Номенклатура).Емкость * ХозрасчетныйДвиженияССубконто.КоличествоКт / 1000) КАК ОбъемРасход
#33 by vicof
там еще регистратор есть
#34 by vicof
Кстати, так можно не писать, а в виртуальной таблице наложить условие на субконто
#35 by H A D G E H O G s
Там их может быть много разных. Я же не знаю че там за жесть алкогольная у автора.
#36 by H A D G E H O G s
Я знаю. Автор просил ВЫРАЗИТЬ
#37 by Лефмихалыч
этот запрос надо еще в цикл засунуть. Для верности.
#38 by web_profiler
ну че вы все меня обс... те? ичимся я
#39 by web_profiler
а как в виртуальной таблице наложить условие на субконто?
#40 by web_profiler
ИЗ     РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
#41 by vicof
3000р. и расскажу
#42 by web_profiler
Да кстати - никакого ускорения = 0.644 сек ВЫБРАТЬ     ХозрасчетныйДвиженияССубконто.СубконтоКт1.НовыйВидАлкоголя КАК Код, ИЗ
#43 by web_profiler
видимо - дальше уже некуда... :(
#44 by GROOVY
(ушел писать курс по запросам...)
#45 by Адский плющ
(ушел в запой...)
#46 by Yea-Yea
ужаснах
#47 by vicof
Еще один?
#48 by GROOVY
Да, с свистелками и перделками. С скриншотами профайлера и объяснениям почему "Субконто1." и "Ссылка." это ацкий пистец.
#49 by Лефмихалыч
почитай мануал. Хоть какой-нибудь. Хотя бы курсы какие-нить укради хотя бы
#50 by wms
тут косяки не делай много точек ХозрасчетныйДвиженияССубконто.Регистратор.Контрагент.ВидЛицензии вложенный сделай на отбор нужных контрагентов
#51 by wms
или пакетный
#52 by Лефмихалыч
зачем?.. Автороподобные нубы его не осилят - инфа 146%
#53 by GROOVY
В ветках можно будет на него ссылаться...
#54 by Yea-Yea
ГДЕ                 И СубконтоКт1 В                     (ВЫБРАТЬ                         ТаблицаСубконто.Субконто                         ТаблицаСубконто КАК ТаблицаСубконто), ИЗ     ИтоговаяТаблица КАК ИтоговаяТаблица
#55 by Yea-Yea
как-то так. думаю головы хватит чтобы свои хотелки на костяк накрутить
#56 by Лефмихалыч
отбор по видам субконто где?
#57 by H A D G E H O G s
Херово
#58 by H A D G E H O G s
3 вт не нужна, в первой - добавить отбор по коду АП, и неуверен, насчет индексирования.
#59 by Лефмихалыч
+ йяпромазал - в движениях с субконто нет такого параметра
#60 by GROOVY
Мне так не понятно, нафига ДвиженияССубконто выбирать, если есть обороты?
#61 by Yea-Yea
там "ГДЕ ИСТИНА" - это как раз место для условия автора. а третий запрос - для группировок и суммирования по полям через точку
#62 by H A D G E H O G s
Где там суммирование?
#63 by Лефмихалыч
+ индекс нафиг не нужен, т.к. в этой таблице не может быть много элементов и в ней ни кто ничего не ищет. И ВЫРАЗИТЬ субконто все равно надо ага. То есть вопрос, зачем эти двнные из БУ получать и почему не из отдельного регистра накопления, специально под это заточенного, тебя не волнует? :)
#64 by H A D G E H O G s
Тоесть, типовые невсчет?
#65 by Yea-Yea
в сабже есть
#66 by Лефмихалыч
типовые на кол. От одного малюсенького регистра ни кто не умрет
#67 by H A D G E H O G s
Его можно выполнить в 2 запросе.
#68 by GROOVY
+1
#69 by Yea-Yea
я предпочитаю разбивать.
#70 by Yea-Yea
кстати да. хозрасчетный не для этого придуман. так что +1 к дополнительному регистру
#71 by web_profiler
Павел, играем дальше ..
#72 by web_profiler
2,3 сек выполнение и тут уже есть обороты
#73 by web_profiler
а че значит Субконто1 и Ссылка - плохо???
#74 by web_profiler
???
#75 by hhhh
ну самую главную ВЫРАЗИТЬ забыл? ХозрасчетныйОстаткиИОбороты.Субконто1.Емкость
#76 by web_profiler
во я дибил!!! Счет.Ссылка = &Ссылка  жесть какая, как я мог так писать??? Счет = &Ссылка  - увеличение скорости с 2.3 до 0.6 сек
#77 by GROOVY
, не я ушел методичку дописывать к курсу по запросам. Играйте без меня.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С