Убрать маршруты из собственного плана и проверить отсутствие

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

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

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

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Используйте отдельную учебную базу. В серверном общем модуле УчебныеЗадачи создайте процедуру ВыполнитьПример() Экспорт и вставьте в неё код одного урока. Вызовите её из серверного обработчика собственной учебной обработки.

  2. Каждый урок создаёт новую коллекцию в памяти. Код не загружает и не сохраняет избранное пользователя, не заменяет план ГлобальныйПоиск, не запускает поиск, не открывает ссылку и не читает рабочие документы.

  3. Для трёх уроков избранного создайте в собственной учебной конфигурации два пустых справочника УчебныеКниги и УчебныеАвторы. Учебные ссылки относятся к спискам этих объектов; записи справочников для упражнения не нужны. Право СохранениеДанныхПользователя требуется для использования избранного по справке платформы.

План = Новый ПланГлобальногоПоиска;
План.Добавить(СтандартныйВидГлобальногоПоиска.Справка, 10);
План.Добавить("НайтиУчебныеКниги", "УчебныйГлобальныйПоиск", Истина, Ложь, 20);
План.Добавить(СтандартныйВидГлобальногоПоиска.МенюФункций, 30);
План.Удалить(СтандартныйВидГлобальногоПоиска.Справка);
План.Удалить("НайтиУчебныеКниги", "УчебныйГлобальныйПоиск");
Сообщить(План.Количество() = 1);
Сообщить(План.Найти(СтандартныйВидГлобальногоПоиска.Справка) = Неопределено);
Сообщить(План.Найти("НайтиУчебныеКниги", "УчебныйГлобальныйПоиск") = Неопределено);
Если План.Количество() = 1 Тогда
    Сообщить(План.Получить(0).ВидПоиска = СтандартныйВидГлобальногоПоиска.МенюФункций);
    План.Удалить(0);
КонецЕсли;
Сообщить(План.Количество() = 0);
План.Добавить(СтандартныйВидГлобальногоПоиска.Справка);
План.Очистить();
Сообщить(План.Количество() = 0);

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

  1. Метод Добавить поддерживает стандартный вид либо параметры обработчика. Не присваиваем его результат: описание возвращаемого значения в локальной справке плана не заявлено.

  2. Удалить принимает разные варианты: стандартный вид, пару имя процедуры/модуль, индекс или сам элемент. В упражнении три способа имеют очевидно разные типы аргументов.

  3. После удаления проверяем Найти на Неопределено. Обращение к Получить(0) происходит только при количестве 1.

  4. Последняя очистка удаляет заново добавленный пункт собственного плана. Менеджер ГлобальныйПоиск не вызывается.

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

  1. Шесть контрольных Истина. После первых удалений остаётся только МенюФункций.

  2. Основное окно не меняет состав реального поиска: ни пустой, ни сокращённый план не устанавливался.

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

Разобраны перегрузки удаления и очистка собственного плана.

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

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

  2. Пара имя процедуры/модуль должна совпадать целиком: одинаковые имена процедур в разных модулях — разные маршруты.

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

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

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

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

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