Имя: Пароль:
1C
 
ОООчень медленно отрабатывать запрос - как оптимизировать?
0 aptomilov
 
25.09.25
14:05
УТ 11 доработанная КТ 2000
Платформа последняя  

Зашел в регистр лкХранилищеАкцизныхМарок так сказать глазами глянут он прям медленно открылся  

запрос  больше  100 секунд отрабатывает




Запрос

"ВЫБРАТЬ
    |    алкХранилищеУпаковокСрезПоследних.Упаковка КАК Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеУпаковок.СрезПоследних(, ) КАК алкХранилищеУпаковокСрезПоследних
    |ГДЕ
    |    алкХранилищеУпаковокСрезПоследних.Упаковка = &Штрихкод
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 1
    |    алкХранилищеУпаковокСрезПоследних.Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеУпаковок.СрезПоследних(, ) КАК алкХранилищеУпаковокСрезПоследних
    |ГДЕ
    |    алкХранилищеУпаковокСрезПоследних.ИерархияУпаковки = &Штрихкод
    |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 1
    |    алкХранилищеАкцизныхМарокСрезПоследних.Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеАкцизныхМарок.СрезПоследних(, ) КАК алкХранилищеАкцизныхМарокСрезПоследних
    |ГДЕ
    |    алкХранилищеАкцизныхМарокСрезПоследних.Упаковка = &Штрихкод"
1 vis
 
25.09.25
14:09
Проиндектировать ИерархияУпаковки и Упаковка ?
2 formista2000
 
25.09.25
14:09
А если условие в параметр виртуальной таблицы зафигачить?
3 Мультук
 
гуру
25.09.25
14:14
(0)

Предлагаете измерения и ресурсы этого регистра угадывать ?
4 aptomilov
 
25.09.25
14:16
все это ресурсы  

в параметр идея может ускорится
5 youalex
 
25.09.25
14:20
(4) если ресурсы, то результат может отличаться, т.к.
в ГДЕ - отбор накладывается на уже построенный срез,  а при условиях в параметрах - строит сам срез по этим условиям
6 aptomilov
 
25.09.25
14:21
тут всплыл один нехороший фактор про который я забыл
база тянется по сетке и она файловая
7 Kongo2019
 
25.09.25
14:22
(0) О да. КТ-2000. Тут блин тока страдать. Эти товарищи очень криво все спроектировали. Я спасался токо прямыми запросам к БД.
8 aptomilov
 
25.09.25
14:22
как думаете если сервак поднять шустрее будет ?
9 Kongo2019
 
25.09.25
14:23
(6) А полный алес капут тогда получается.
10 Мультук
 
гуру
25.09.25
14:24
(4) (2)

Родитель -  измерение
Состояние - ресурс

Дата Родитель Состояние
01.01.2025 Папа Бухой
01.03.2025 Папа Трезвый
01.05.2025 Папа Бухой
24.09.2025 Папа Трезвый

а) Так вот запрос срез последних по
СрезПоследних(, Родитель = Папа)
Где Состояние = Бухой


Выдаст
<Нет строк>

б) А вот
СрезПоследних(, Состояние = Бухой)

Выдаст строку
01.05.2025 Папа Бухой

"Вот такая вот херня малята" (с)
11 Kongo2019
 
25.09.25
14:26
(8) Они сам регистр по дебильному спроектировали. Тут надо писать очень точечные запросы, оно еще как-то будет работать. Ну или выкинуть ушедшие марки.
12 СвинТуз
 
25.09.25
14:32
(10)
Старый фокус, только он вроде как по измерению работает и при отборе и при построении виртуально таблицы.
Такое впечатление, что случай не тот.

Ему бы упаковки во временную отобрать.
Потом с этим фильтром во временную.(это не тот случай)
13 СвинТуз
 
25.09.25
14:31
(10)
фокус прокатывает, когда фильтр на созданную виртуалку
по ресурсу получаемому накладывается.

Ария не из того балета? Нет?
14 aptomilov
 
25.09.25
14:30
(11) регистр реально огромный возможно очистка его от ушедших марок  поможет
15 СвинТуз
 
25.09.25
14:37
"ВЫБРАТЬ
    |    алкХранилищеУпаковокСрезПоследних.Упаковка КАК Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеУпаковок.СрезПоследних(, Упаковка = &Штрихкод) КАК алкХранилищеУпаковокСрезПоследних
   |
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 1
    |    алкХранилищеУпаковокСрезПоследних.Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеУпаковок.СрезПоследних(, ИерархияУпаковки = &Штрихкод) КАК алкХранилищеУпаковокСрезПоследних
    |ОБЪЕДИНИТЬ ВСЕ
    |
    |ВЫБРАТЬ ПЕРВЫЕ 1
    |    алкХранилищеАкцизныхМарокСрезПоследних.Упаковка
    |ИЗ
    |    РегистрСведений.алкХранилищеАкцизныхМарок.СрезПоследних(, Упаковка = &Штрихкод) КАК алкХранилищеАкцизныхМарокСрезПоследних"
16 СвинТуз
 
25.09.25
14:38
И еще надо смотреть на тип значения того по чему фильтр ставишь. Не составной ли.
17 СвинТуз
 
25.09.25
14:43
Срез последних тут строить не нужно.

Не получается ни даты, ни реквизитов.
Типа просто наличие проверяется.

Странно все выглядит.
18 youalex
 
25.09.25
14:48
ТС, какая структура регистра, ответь на (3)
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс