Имя: Пароль:
1C
 
Вопрос по индексам оборотного регистра накопления.
0 H A D G E H O G s
 
19.10.25
11:58
Собственно, типовой алгоритм ввода реализации на основании заказа в УТ11.5. Вызывает процедуру
Документы.РеализацияТоваровУслуг.ЗаполнитьПоОстаткамЗаказов()
внутри нее вызывается процедура
ПолучитьРезультатЗапросаПоОстаткамЗаказов()

внутри которой все сводится к простому запросу

ВЫБРАТЬ
    РаспоряженияОбороты.Распоряжение КАК ЗаказКлиента,
    РаспоряженияОбороты.Номенклатура КАК Номенклатура,
    РаспоряженияОбороты.Характеристика КАК Характеристика,
    РаспоряженияОбороты.КодСтроки КАК КодСтроки,
    РаспоряженияОбороты.Склад КАК Склад,
    РаспоряженияОбороты.Серия КАК Серия,
    РаспоряженияОбороты.КОформлениюОборот КАК КОформлению,
    РаспоряженияОбороты.СуммаОборот КАК Сумма
ИЗ
    РегистрНакопления.РаспоряженияНаОтгрузку.Обороты(, , , Распоряжение =&Заказ) КАК РаспоряженияОбороты


И этот запрос читает 1 млн строк данных, хоть измерение Распоряжение - первое и индексировано.

Лезем на ИТС иии, видим
Регистр накопления
Таблица оборотов

[ОРРХ | ОРНР1 +] Период + Измерение1 + ... + ИзмерениеN + [DimHash] + [Splitter] (Кластерный)

[ОРРХ | ОРНР1 +] Измерение + Период


То есть, для условия без периода, по первому измерению, кластерный индекс использоваться не будет, а больше индексов для первого измерения и нет.

Передвинув Распоряжение на 2 позицию - получил использование индекса и чтение 12 строк (по количеству строк распоряжения)

Дичь же или есть скрытый смысл?
1 H A D G E H O G s
 
19.10.25
12:09
Написал на партнерку, посмотрим, че скажут
2 Волшебник
 
19.10.25
12:41
А может завести регистр остатков?
3 H A D G E H O G s
 
19.10.25
12:44
(2) Это кусок типовой 1С. Всем не заведешь.
Ну и разрабы типовой надеялись, что проиндексирует, установив признак у измерения "Индексировать", но разрабы платформы не оправдали ожиданий.
Просчитались, но кто!?
4 Волшебник
 
19.10.25
12:47
(3) Подумаешь, типовой... Идеал что ли?
5 H A D G E H O G s
 
19.10.25
12:49
(4) Лучшее, что есть.
6 Волшебник
 
19.10.25
13:25
(5) Ну не надо...
7 d4rkmesa
 
19.10.25
18:43
(3) Тут и платформа, и регистр новый (появившийся в 2.5.18 вроде), и сама процедура заполнения ТЧ - тогда еще не определились как лучше.

PS: Вроде уже исправились в 2.5.24, там тоже передвинули измерение на 2-ю позицию, на 1-й новое измерение с перечислением.
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший