"Все функции" с возможностью поиска по первым символам



Быстрый поиск по первым буквам имени объекта, возможность фильтрации списка по подстроке.

Простая обработка, аналог инструмента «Все функции» входящего в любую конфигурацию 1С.

 

Выводит список всех объектов конфигурации в алфавитном порядке (не дерево) с возможностью быстрого поиска.

 

Добавлена возможность фильтрации списка по подстроке (включая и исключая).

 

Двойной клик или нажатие «Enter» на строке с именем объекта открывает форму списка.

 

Главной особенностью является возможность быстрого поиска по первым буквам имени объекта (см. на скрине № 1).

 

После формирования (Ctrl + Enter) поле списка активизируется по умолчанию — можно сразу вводить первые символы для поиска.

 

 

 Код

 

 

Код несложный, форму и объекты — все видно на скринах.

Протестировано на версии платформы 8.3.12.1714

 

Upd. 05.04.2024, ver. 1.3 :

 

Возможность использования в режиме совместимости 8.2 — использована функция Найти вместо функции СтрНайти

Исправлена работа флажка "Включать Обработки"

Добавлена возможность включать в список отчеты и константы (соответствующие флажки выведены на форму)

 

Проверено на версии 8.3.9.х в режиме совместимости с Версией 8.2.16

 

Upd. 27.04.2024

 

Исправлена ошибка, при повторном формировании списка найденные строки дублировались, приходилось переоткрывать форму обработки.

Актуализирован код в публикации.

2 Comments

  1. ellavs

    В реквизите ТипыОбъектов, если правильно понимаю, содержится одна колонка — ИмяМетаданных, которая где-то при открытии формы должна заполняться?

    Reply
  2. m0528

    В реквизите ТипыОбъектов 4 колонки, заполняются в обработчике события формы:

    &НаСервере
    Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    Элементы.ВерсияОбработки.Заголовок = Элементы.ВерсияОбработки.Заголовок + «1.0»;
    
    // ТипыОбъектов — хранит наименования объектов метаданных
    Стр0 = ТипыОбъектов.Добавить();
    Стр0.ИмяМетаданных = «Справочники»; Стр0.ИмяТипаОбъекта = «Справочник»; Стр0.Картинка = БиблиотекаКартинок.Справочник; Стр0.ИмяФормыОбъекта = «ФормаСписка»;
    Стр1 = ТипыОбъектов.Добавить();
    Стр1.ИмяМетаданных = «Документы»;   Стр1.ИмяТипаОбъекта = «Документ»;   Стр1.Картинка = БиблиотекаКартинок.Документ;   Стр1.ИмяФормыОбъекта = «ФормаСписка»;
    Стр2 = ТипыОбъектов.Добавить();
    Стр2.ИмяМетаданных = «РегистрыНакопления»;   Стр2.ИмяТипаОбъекта = «РегистрНакопления»;  Стр2.Картинка = БиблиотекаКартинок.РегистрНакопления; Стр2.ИмяФормыОбъекта = «ФормаСписка»;
    Стр3 = ТипыОбъектов.Добавить();
    Стр3.ИмяМетаданных = «РегистрыСведений»;   Стр3.ИмяТипаОбъекта = «РегистрСведений»;  Стр3.Картинка = БиблиотекаКартинок.РегистрСведений; Стр3.ИмяФормыОбъекта = «ФормаСписка»;
    Если ВключатьОбработки Тогда
    Стр4 = ТипыОбъектов.Добавить();
    Стр4.ИмяМетаданных = «Обработки»;   Стр4.ИмяТипаОбъекта = «Обработка»;  Стр4.Картинка = БиблиотекаКартинок.Обработка; Стр4.ИмяФормыОбъекта = «Форма»;
    КонецЕсли;
    
    КонецПроцедуры
    

    Показать

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *