К списку форумов К списку вопросов
Функция поиска
begemot
26.12.2001 - 18:02
Вот такая задача:
сделать функцию поиска по списку контрагентов (7.7)
Процедура ПоискКонтрагента()
Перем текстпоиска;
СписокКонтрагенты=СоздатьОбъект("Справочник.Контрагенты");
СписокКонтрагенты.ВыбратьЭлементы();
СписокКонтрагенты.ПолучитьЭлемент();
Пока СписокКонтрагенты.ТекущийЭлемент().ЭтоГруппа()=1 Цикл
СписокКонтрагенты.ПолучитьЭлемент();
КонецЦикла;
текстпоиска=СписокКонтрагенты.ТекущийЭлемент().Наименование;
ввод=ВвестиСтроку (текстпоиска,"Введите полностью или часть НАИМЕНОВАНИЯ",20);
Если ввод=1 Тогда
контра=СписокКонтрагенты.НайтиПоНаименованию(текстпоиска,0,0);
КонецЕсли;
КонецПроцедуры
Вот никак не пойму - а как теперь перейти в Многострочной части на найденный элемент? т.е. сделать его выбранным? - может кто свойство подскажет или хелп клёвый?
mszsuz
1 - 26.12.2001 - 18:07
А зачем цикл в начале? Или тебе за количество строк платят? :) Или новый комп хочешь купить, потому как старый тормозит? :))
begemot
2 - 26.12.2001 - 18:09
(1) потому что выбирает он ВСЁ - ВМЕСТЕ С ПАПКАМИ, а тормозит он не так уж и страшно :) да и вообще этот ЦИКЛ так, декоративная херь, её можно убрать суть броблемы она НЕ решает!
mszsuz
3 - 26.12.2001 - 18:11
Сам себе: за что к человеку прикопался?
2 (0) НайтиПоНаименованию все равно ищет по всему справочнику.
avb
4 - 26.12.2001 - 18:14
тебе не хватает еще одной "декоративной хери" для решения "броблемы", АктивизироватьОбъект она называется.
begemot
5 - 26.12.2001 - 18:15
(3) ну, а как теперь показать найденный?
tsn
6 - 26.12.2001 - 18:15
АктивизироватьОбъект(Контра.ТекущийЭлемент())
Джа Джа Бингс
7 - 26.12.2001 - 18:16
это моя так, на всякий случай, в будущем пригадица
===
Пока СписокКонтрагенты.ПолучитьЭлемент()=1 Цикл
Если СписокКонтрагенты.ТекущийЭлемент().ЭтоГруппа()=1 Тогда
Продолжить;
КонецЦикла;
begemot
8 - 26.12.2001 - 18:17
(4) я в танке, объясни получше
Джа Джа Бингс
9 - 26.12.2001 - 18:18
даже в (7) "ТекущийЭлемент()" не абизатильна
begemot
10 - 26.12.2001 - 18:20
(9) Спасибо. побёг проверять!
mszsuz
11 - 26.12.2001 - 18:23
Если ты в форме списка спр-ка:
Если ввод=1 Тогда
Если СписокКонтрагенты.НайтиПоНаименованию(текстпоиска,0,0)=1 тогда
АктивизироватьОбъект(СписокКонтрагенты.ТекущийЭлемент());
Иначе
Предупреждение("Не найден!");
КонецЕсли;
КонецЕсли;
begemot
12 - 26.12.2001 - 18:45
А какое свойство у этого списка отвечает за отображение ВСЕХ этементов, т.е. без родительских папок, т.е. не вдревовидной структуре, а сортировать элементы можно?
mszsuz
13 - 26.12.2001 - 18:47
Попробуй ИерархическийСписок, не совсем то, но может подойдет?
begemot
14 - 26.12.2001 - 19:11
Да, ИерархическийСписок работает!!! УРА!

К списку вопросов на форуме 1C


TopList
Используются технологии uCoz