очень медленный поиск по номенклатуре
26.03.2004
16:04
#1
У нас установлена сетевая версия 1С Торговля и Склад версия 7.7.
Возникла проблема, заключающаяся в следующем при входе 1 пользователя в 1С Торговля и Склад поиск по номенклатуре осуществляется в течение нескольких секунд, при подключении к базе 1С 2-го пользователя поиск возростает на порядок и достигает 2 мин. Как можно разрешить эту проблему?
Возникла проблема, заключающаяся в следующем при входе 1 пользователя в 1С Торговля и Склад поиск по номенклатуре осуществляется в течение нескольких секунд, при подключении к базе 1С 2-го пользователя поиск возростает на порядок и достигает 2 мин. Как можно разрешить эту проблему?
27.03.2004
16:00
#2
"Практически намного увеличить скорость поиска не удастся.
Если используете быстрый поиск, то поставте сортировку по наименованию(ищется чуть быстрее)
Можно написать отдельную обработку по поиску, например запихивать элементы (или наименования)в СписокЗначений или ТЗ а потом там искать и возвращать код а потом искать по коду. (это все теория, на практике не пробовал)
Или делать НайтиПоНаименованию();"
Если используете быстрый поиск, то поставте сортировку по наименованию(ищется чуть быстрее)
Можно написать отдельную обработку по поиску, например запихивать элементы (или наименования)в СписокЗначений или ТЗ а потом там искать и возвращать код а потом искать по коду. (это все теория, на практике не пробовал)
Или делать НайтиПоНаименованию();"
27.03.2004
20:22
#3
"Решил вот попробовать свою идею.
На форму списка номенклатуры бросаете Поле ввода, называете например "Наим", и рядом кнопку на которую вешаете процедуру поиска:
Процедура Поиск()
Спр=СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент()=1 Цикл
Если Найти(Спр.Наименование,СокрЛП(Наим))>0 Тогда
АктивизироватьОбъект(Спр);
Возврат;
КонецЕсли;
КонецЦикла;
Сообщить("Не Найден");
КонецПроцедуры
работает намного быстрее чем стандартный бинокль
пробовал на справочнике в 4500 наименований, искал самый последний элемент."
На форму списка номенклатуры бросаете Поле ввода, называете например "Наим", и рядом кнопку на которую вешаете процедуру поиска:
Процедура Поиск()
Спр=СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент()=1 Цикл
Если Найти(Спр.Наименование,СокрЛП(Наим))>0 Тогда
АктивизироватьОбъект(Спр);
Возврат;
КонецЕсли;
КонецЦикла;
Сообщить("Не Найден");
КонецПроцедуры
работает намного быстрее чем стандартный бинокль
пробовал на справочнике в 4500 наименований, искал самый последний элемент."
Читают тему
(гостей: 1)