|
УТ10.3 тормоз при подборе номенклатуры
| ☑ |
0
Лунтик
06.10.15
✎
10:51
|
Клиент желает работать с развернутым списком номенклатуры (15 тысяч строк в справочнике номенклатуры+характеристики+качество=50 тысяч строк).
При подборе в режиме цена/остатки жуткие тормоза (при группировке пропадают).
1. Есть смысл оптимизировать запросы (речь идет только о развернутом списке) или из-за сложных наложений ускорения не следует ждать?
2. Если уж оптимизировать то в 10 или в 11 (собственно 10 выбрали из-за того, что 11 в развернутом виде тормозит уже в режиме "справочник" )?
|
|
1
Мимохожий Однако
06.10.15
✎
10:55
|
Подбор разный бывает. При тормозах надо брать тот вид отбора, который без дополнительных вычислений при выводе.
|
|
2
Cyberhawk
06.10.15
✎
10:56
|
Дин. список тебе в помощь
|
|
3
Лунтик
06.10.15
✎
10:58
|
(2) Разве в 11 не дин.список?
|
|
4
Cyberhawk
06.10.15
✎
11:03
|
(3) он, и все нормально работает
|
|
5
John83
06.10.15
✎
11:03
|
(1) для остатков не такой уж запрос получится
|
|
6
John83
06.10.15
✎
11:04
|
(0) запускай замер производительности и смотри где затык, а так не должен тормозить, ибо там тоже дин. список
|
|
7
GrafFromTomsk
06.10.15
✎
11:05
|
Кешировать нуна. Как-то так:
Процедура СправочникНоменклатураПриПолученииДанных(Элемент, ОформленияСтрок)
//заполняем
ТТ = Новый ТаблицаЗначений;
ТТ.Колонки.Добавить("Товар");
ТТ.Колонки.Добавить("Остаток");
ТТ.Колонки.Добавить("Резерв");
ТТ.Колонки.Добавить("Цена");
Для каждого Строка Из ОформленияСтрок Цикл
НоваяСтрока = ТТ.Добавить();
НоваяСтрока.Товар = Строка.ДанныеСтроки.Ссылка;
КонецЦикла;
//вызываем
глПолучитьКеш(ТТ,СтруктураИсходныхПараметров.Склад);
//возвращаем
й = 0;
Для каждого Строка Из ОформленияСтрок Цикл
Ост = ТТ[й].Остаток;
Если Ост <> 0 Тогда
Строка.Ячейки.Остаток.УстановитьТекст(Ост);
КонецЕсли;
Ц = ТТ[й].Цена;
Если Ц<>0 Тогда
Строка.Ячейки.Цена.УстановитьТекст(Ц);
КонецЕсли;
Р = ТТ[й].Резерв;
Если Р<>0 Тогда
Строка.Ячейки.Резерв.УстановитьТекст(Р);
КонецЕсли;
й = й + 1;
КонецЦикла;
|
|