Почему в этом участке поиск зависает?
☑
0
мистер игрек
29.03.18
✎
11:58
ОчиститьОтборыКлиент(Истина);
ПоискССозданиемСписков = Истина;
ВидПоискаКраткий = СтрЗаменить(ВидПоиска, "_ПолноеСоответствие", "");
ПоискПоПолномуСоответствию = Найти(ВидПоиска, "_ПолноеСоответствие") > 0;
Если НЕ ПустаяСтрока(ПолеПоиска) Тогда
Если ВидПоискаКраткий = "Везде" Тогда
ВыполнитьПоискВезде();
ИначеЕсли ВидПоискаКраткий = "Штрихкод" Тогда
ВыполнитьПоискПоШтрихкоду();
ИначеЕсли ВидПоискаКраткий = "SKU" Тогда
Попытка
ПолеПоискаЧисло = Число(ПолеПоиска);
ВыполнитьПоискПоSKU(ПолеПоискаЧисло);
Исключение
ПоискССозданиемСписков = Ложь;
КонецПопытки;
Иначе
ЭлементОтбора = Товары.КомпоновщикНастроек.Настройки.Отбор.ПолучитьОбъектПоИдентификатору(СтруктураВидовПоискаИЭлементовОтбора[ВидПоиска]);
//вот здесь и зависает
Если ЭлементОтбора <> Неопределено Тогда
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = ПолеПоиска;
ПоискССозданиемСписков = Ложь;
КонецЕсли;
КонецЕсли;
КонецЕсли;
"Товары" это реквизит управляемой формы с динамическим списком
1
lodger
29.03.18
✎
12:01
значит ДС криво отдает ПолучитьОбъектПоИдентификатору()
или в СтруктураВидовПоискаИЭлементовОтбора[ВидПоиска] бурда какая-то.
разделите на две строки и посмотрите в отладчике.
2
мистер игрек
29.03.18
✎
12:04
нет, зависание идет после этого кода
3
мистер игрек
29.03.18
✎
12:26
Если еще детализировать тогда здесь зависает
ЭлементОтбора.ПравоеЗначение = ПолеПоиска;
4
lodger
29.03.18
✎
12:55
(3) попробуй делать это не на клиенте, а на сервере, возможно даже с контекстом.
5
мистер игрек
29.03.18
✎
13:17
(4) Пробовал. Та же фигня
6
мистер игрек
29.03.18
✎
13:17
может это фича платформы?
7
George Wheels
29.03.18
✎
13:38
Попробуй запихнуть в Попытка .. Исключение и посмотреть что происходит.
8
мистер игрек
29.03.18
✎
13:41
(7) но там же не происходит исключение
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.