Например: документ «Пересчет товаров» в конфигурации «1С:Управление торговлей». Необходимо сделать поиск по части строки, по колонкам «наименование» и «артикул». В результатах поиска может выводиться несколько значений.
Порядок действий:
- В табличную часть добавим вспомогательный реквизит отбор:
- В форму элемента добавим поле «Поиск» и кнопку «Найти»;
- При нажатии на кнопку «Найти» запускать следующую процедуру:
&НаСервере Процедура НайтиНаСервере() СтруктураПоиска = Новый Структура; Для каждого Стр Из Объект.Товары Цикл Если Найти(Врег(Стр.Номенклатура.Наименование), Врег(_Поиск)) > 0 или Найти(Врег(Стр.Номенклатура.Артикул), Врег(_Поиск)) > 0 Тогда Стр._Отбор = Истина; КонецЕсли; КонецЦикла; СтруктураПоиска.Вставить("_Отбор", Истина); Элементы.Товары.ОтборСтрок = Новый ФиксированнаяСтруктура(СтруктураПоиска); КонецПроцедуры
Если необходимо очистить поиск, то можно добавьте кнопку с запуском следующей процедуры:
&НаКлиенте Процедура ПоискОчистка() СтруктураПоиска = Новый Структура; Для каждого Стр Из Объект.Товары Цикл Стр._Отбор = Ложь; КонецЦикла; СтруктураПоиска.Вставить("_Отбор", Ложь); Элементы.Товары.ОтборСтрок = Новый ФиксированнаяСтруктура(СтруктураПоиска); КонецПроцедуры
Оставить комментарий