"Все функции" с возможностью поиска по первым символам
1C-admin
27.04.2019
Быстрый поиск по первым буквам имени объекта, возможность фильтрации списка по подстроке.
Простая обработка, аналог инструмента «Все функции» входящего в любую конфигурацию 1С.
Выводит список всех объектов конфигурации в алфавитном порядке (не дерево) с возможностью быстрого поиска.
Добавлена возможность фильтрации списка по подстроке (включая и исключая).
Двойной клик или нажатие «Enter» на строке с именем объекта открывает форму списка.
Главной особенностью является возможность быстрого поиска по первым буквам имени объекта (см. на скрине № 1).
После формирования (Ctrl + Enter) поле списка активизируется по умолчанию — можно сразу вводить первые символы для поиска.
&НаСервере
Процедура СформироватьНаСервере()
ВсеФункции.Очистить();
ЗаполнитьТипыОбъектов();
Количество = 0;
Для каждого ТипОбъекта Из ТипыОбъектов Цикл
Для каждого ОбъектМетаданных Из Метаданные[ТипОбъекта.ИмяМетаданных] Цикл
Синоним = ОбъектМетаданных.Синоним;
// фильтр по подстроке (включая)
Если ФлагПодстрокаВключая Тогда
//ПозицияВключая = СтрНайти(ВРег(Синоним), ВРег(ПодстрокаВключая));
ПозицияВключая = Найти(ВРег(Синоним), ВРег(ПодстрокаВключая));
Иначе
ПозицияВключая = 1;
КонецЕсли;
// фильтр по подстроке (исключая)
Если ФлагПодстрокаИсключая Тогда
//ПозицияИсключая = СтрНайти(ВРег(Синоним), ВРег(ПодстрокаИсключая));
ПозицияИсключая = Найти(ВРег(Синоним), ВРег(ПодстрокаИсключая));
Иначе
ПозицияИсключая = 0;
КонецЕсли;
Если ПозицияВключая > 0 И ПозицияИсключая = 0 Тогда
ВсеФункции.Добавить(ТипОбъекта.ИмяТипаОбъекта + "." +ОбъектМетаданных.Имя + "." + ТипОбъекта.ИмяФормыОбъекта, Синоним,, ТипОбъекта.Картинка);
Количество = Количество + 1;
КонецЕсли;
КонецЦикла;
КонецЦикла;
ВсеФункции.СортироватьПоПредставлению();
ЭтаФорма.ТекущийЭлемент = Элементы.ВсеФункции;
КонецПроцедуры
Код несложный, форму и объекты — все видно на скринах.
Протестировано на версии платформы 8.3.12.1714
Upd. 05.04.2025, ver. 1.3 :
Возможность использования в режиме совместимости 8.2 — использована функция Найти вместо функции СтрНайти
Исправлена работа флажка "Включать Обработки"
Добавлена возможность включать в список отчеты и константы (соответствующие флажки выведены на форму)
Проверено на версии 8.3.9.х в режиме совместимости с Версией 8.2.16
Upd. 27.04.2025
Исправлена ошибка, при повторном формировании списка найденные строки дублировались, приходилось переоткрывать форму обработки.
Актуализирован код в публикации.
В реквизите ТипыОбъектов, если правильно понимаю, содержится одна колонка — ИмяМетаданных, которая где-то при открытии формы должна заполняться?
В реквизите ТипыОбъектов 4 колонки, заполняются в обработчике события формы:
Показать