В данной публикации хочу рассказать, как я выполняю быстрый глобальный поиск по конфигурации.
Поиск осуществляется через Total Commander, выполняется меньше минуты, не блокирует конфигуратор, по окончании раздается звуковой сигнал. В это время можно продолжать выполнять задачи в конфигураторе.
Как обычно делают поиск по конфигурации:
Глобальный поиск - конфигуратор блокируется на одну-несколько минут. Типовой поиск может даже зависнуть и не реагировать на Ctrl+Break.
Кроме того, можно забыть установить пометку на нужных типах поиска, и не найти нужного. Например, в Макетах хранятся запросы СКД.
Как делаю поиск я:
Раз в сутки или чаще, вручную или скриптом по расписанию выгружаю конфигурацию в файлы "Выгрузить конфигурацию в файлы..."
;Ключ -update выгружает только измененные файлы, что ускоряет повторную выгрузку.
@echo on
"c:\Program Files\1cv8\common\1cestart.exe" DESIGNER /IBNAME "УТ 11.4" /N"Администратор" /DumpConfigToFiles "d:\1С\УТ11 файлы\" -update
timeout 10
Лайфхак: Если вы создали батник в Блокноте, а в черном окне интерпретаторе командной строки вместо русских букв одни крякозяблы, допишите в начало батника строку chcp 1251 > nul
Через Total Commander запускаю поиск в папке с выгруженной конфигурацией.
Должна стоять пометка Everything - при первом нажатии на нее вам предложат установить программу Everything для индексирования файлов дисков для быстрого поиска (нужны права Администратора).
Фильтр - *.bsl;*.xml;*.bin;*.html;*.txt;
После нажатия на нужной строке F3, откроется просмотрщик, в нем еще раз нажимаем F3, строка поиска переносится в него автоматически.
Такой поиск осуществляется в несколько раз быстрее. Можно использовать регулярные выражения. Можете запомнить только одно: Процедура.*Массив найдет строки типа Процедура ЗаполнитьМассивСтрок()
Поиск строк, содержащих одновременно "Новый Структура" и "Объект"
Новый Структура.*Объект
Найденная строка: МетаПредставлениеОбъекта = Новый Структура("ПредставлениеОбъекта");
Поиск процедур, содержащих в имени слово "Массив"
Процедура\s[А-я\w]*Массив[А-я\w]*\(
Найденная строка: Процедура ДополнитьТаблицуИзМассива(Таблица, Данные, ИмяПоля) Экспорт
Проигнорирует строку: Процедура ПолучитьРеквизитыФормы(МассивРеквизитов)
Хороший конструктор регулярных выражений
Минусы: Результаты менее наглядны.
Файл для скачивания содержит скрипт быстрой выгрузки с ключом -update. Кодировка OEM866, редактировать желательно через Notepad++