helpf.pro
Регистрация
 0 
Распечатать

Делаем быстрый поиск по списку Справочника, Документов.

Сразу оговорюсь, пример для списка справочника Контрагенты, но подобное я использую очень часто.

И так: Менеджерам хочется открыть список контрагентов, и быстро найти контрагента по любым данным которые они помнят!

Реализованно следующим образом:
1. На форму в Командную панель Действия формы добавленно 2 Кнопки
а) Найтиконтр (с картинкой поиск, Процедура НайтиКонтр(Кнопка)) будет использоваться для запроса данных у пользователя для отбора
б) Инф (с картинкой бинокль) будет отображать параметр текущего запроса
в) В свойствах табличного поля добавим Событие При Активизации Колонки - Процедура ИзмНазваниеКнопки(Элемент)

2. В модуль добавим код:
Код 1C v 8.х
 
Процедура НайтиКонтр(Кнопка)
Если элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Показать все задания" Тогда
СправочникСписок.Отбор.Сбросить();
элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Поиск по "+ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ТекстШапки;
элементыформы.ДействияФормы.Кнопки.инф.текст="Отбора нет";
Иначе
Текст = "";
Подсказка = "Поиск по "+ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ТекстШапки;
Типзнач=ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ЭлементУправления.ТипЗначения;
Если ВвестиЗначение(Текст, Подсказка,Типзнач) Тогда
Попытка
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].ВидСравнения = ВидСравнения.Содержит;
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].Значение = текст;
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].Использование = Истина;
элементыформы.ДействияФормы.Кнопки.инф.текст="Отбор: Содержит - "+ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ТекстШапки+" = "+ВРег(строка(текст));
элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Показать все задания";
Исключение
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].ВидСравнения = ВидСравнения.Равно;
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].Значение = текст;
СправочникСписок.Отбор[ЭлементыФормы.СправочникСписок.ТекущаяКолонка.имя].Использование = Истина;
элементыформы.ДействияФормы.Кнопки.инф.текст="Отбор: Равно - "+ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ТекстШапки+" = "+ВРег(строка(текст));
элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Показать все задания";
Конецпопытки;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

Процедура ИзмНазваниеКнопки(Элемент)
Если не элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Показать все задания" Тогда
элементыформы.ДействияФормы.Кнопки.Найтиконтр.текст ="Поиск по "+ЭлементыФормы.СправочникСписок.ТекущаяКолонка.ТекстШапки;
КонецЕсли;
КонецПроцедуры


В результате перемещаясь по колонкам списка, меняется Поиск по...(Названию колонки)
title
title
title

Для примера нужно быстро получить список Контрагентов у которых телефон содержит 783
title

Результат:
title


Автор: Евгений Мигачев
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 8747
 0 
Распечатать
Возможно, вас также заинтересует
1C и Google Maps 12
была поставлена задача отображения на географической карте медицинских учреждений. После обзора предлагаемых решений был выбран сервис google. Но так же подобного рода подход будет работать и с картами сервиса yandex. Во...
1C: Enterprise Development Tools 35
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
Google maps, поиск оптимального маршрута 2
В данном посте хочу коснуться основных аспектов построения оптимального маршрута с использованием API Google maps. Исходные данные для построения маршрута: * Географические координаты объектов, которые хранятся в базе; *...
Microsoft SQL Server Native Client Добавление значения в столбец "datetime" привело к переполнению 0
При формировании отчета на СКД получили ошибку: Microsoft SQL Server Native Client 11.0: Добавление значения в столбец "datetime" привело к переполнению Подробнее текст такой: ... по причине: Ошибка компоновки данных по причине: Ошибка...
rphost занимает память и грузит процессор 12
У многих возникают проблемы с rphost.exe, разного вида: rphost занимает всю память rphost грузит процессор rphost жрет память причем 1С даже на запущена, а в диспетчере следующее: ежеминутно расчет на 2-3 мегабайта. Как быть и...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.