Прочитать настройки глобального поиска перед экспериментом

Учебные задачи

Отдельная клиентская команда показывает описание, подсказку и количество маршрутов. Текущий план не редактируется.

Где и как запускать

Полный клиентский обработчик команды ВыполнитьПример собственной управляемой формы. Существующие обработчики не перезаписывайте.

Подготовка

  1. Используйте отдельную пустую учебную конфигурацию УчебнаяКонфигурацияСинтаксиса и учебного пользователя. Не устанавливайте этот поиск в рабочую УТ/КА2/УНФ: пример намеренно оставляет в плане только собственный обработчик.

  2. Создайте общий модуль УчебныйГлобальныйПоиск: Глобальный=Ложь, Клиент (управляемое приложение)=Истина, Сервер=Ложь. Вставьте в него полный код урока собственного обработчика. Он работает только с константами и не обращается к базе.

  3. Создайте собственную управляемую обработку с командами НастроитьУчебныйПоиск, НачатьУчебныйПоиск, ВосстановитьПоиск. Вставьте полный модуль формы из последнего урока и назначьте эти обработчики команд.

  4. Запускайте в поддерживаемом клиенте 8.5.1.1343. Сначала настройте поиск, затем начните, дождитесь результата и восстановите исходные настройки до закрытия формы. Не выполняйте восстановление сразу после НачатьПоиск: он только начинает операцию.

&НаКлиенте
Процедура ВыполнитьПример(Команда)
    Описание = ГлобальныйПоиск.ПолучитьОписание();
    Подсказка = ГлобальныйПоиск.ПолучитьПодсказкуВвода();
    План = ГлобальныйПоиск.ПолучитьПлан();
    Сообщить("Описание: " + Строка(Описание));
    Сообщить("Подсказка: " + Подсказка);
    Сообщить("Маршрутов в плане: " + Строка(План.Количество()));
    Для Каждого Маршрут Из План Цикл
        Если Маршрут.ВидПоиска <> Неопределено Тогда
            Сообщить("Стандартный вид: " + Строка(Маршрут.ВидПоиска));
        Иначе
            Сообщить("Обработчик: " + Маршрут.Модуль + "." + Маршрут.ИмяПроцедуры);
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры

Разбор по шагам

  1. ГлобальныйПоиск — глобальный менеджер, а не тип для Новый. Получаем три независимых настройки через его методы.

  2. Описание может быть Строка или ФорматированнаяСтрока: для диагностического показа используем Строка. Пустое описание допустимо.

  3. У стандартного маршрута есть ВидПоиска. У собственного обработчика он Неопределено, зато заданы Модуль и ИмяПроцедуры.

  4. Количество пунктов плана — число видов/обработчиков, не число результатов и не число найденных документов. Не меняем полученный план.

Как проверить результат

  1. Показаны текущие описание и подсказка; каждая строка маршрута соответствует стандартному виду или обработчику учебного приложения.

  2. Поиск не запускается и подсказка не заменяется: в коде только получение настроек.

Ожидаемый результат

Получен снимок текущего плана перед безопасным учебным экспериментом.

На что обратить внимание

  1. Не вызывайте эти методы в серверном общем модуле: менеджер поиска там недоступен.

  2. Имена модулей диагностируйте только в своей учебной базе, не публикуйте внутренние маршруты чужого рабочего приложения.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.