На четырёх собственных карточках удаляем по объекту, строковому значению и индексу. Оставшийся черновик очищаем отдельно.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Используйте отдельную учебную базу. В серверном общем модуле УчебныеЗадачи создайте процедуру ВыполнитьПример() Экспорт и вставьте в неё код одного урока. Вызовите её из серверного обработчика собственной учебной обработки.
Каждый урок создаёт новую коллекцию в памяти. Код не загружает и не сохраняет избранное пользователя, не заменяет план ГлобальныйПоиск, не запускает поиск, не открывает ссылку и не читает рабочие документы.
Для трёх уроков избранного создайте в собственной учебной конфигурации два пустых справочника УчебныеКниги и УчебныеАвторы. Учебные ссылки относятся к спискам этих объектов; записи справочников для упражнения не нужны. Право СохранениеДанныхПользователя требуется для использования избранного по справке платформы.
Результаты = Новый РезультатГлобальногоПоиска;
Для Каждого Ключ Из СтрРазделить("guide-book;guide-pen;guide-paper;guide-folder", ";") Цикл
Результаты.Добавить(Ключ, Ключ);
КонецЦикла;
Книга = Результаты.Найти("guide-book");
Если Книга <> Неопределено Тогда
Результаты.Удалить(Книга);
КонецЕсли;
Результаты.Удалить("guide-pen");
Если Результаты.Количество() = 2 Тогда
Результаты.Удалить(0);
КонецЕсли;
Сообщить(Результаты.Количество() = 1);
Сообщить(Результаты.Найти("guide-folder") <> Неопределено);
Сообщить(Результаты.Найти("guide-book") = Неопределено);
Результаты.Очистить();
Сообщить(Результаты.Количество() = 0);Разбор по шагам
Конструктор создаёт пустой результат; добавляем четыре собственных уникальных строковых ключа.
Первое удаление передаёт ЭлементРезультатаГлобальногоПоиска. Второе передаёт строку-значение. Третье передаёт числовой индекс 0.
Строковые ключи специально не числовые: Число в перегруженном Удалить может быть индексом. Для удаления карточки с числовым значением сначала Найти, затем передать сам найденный элемент.
Очистить действует только на Результаты, созданные в этом упражнении. Не удаляются настоящие книги или пользовательская история.
Как проверить результат
Четыре контрольных Истина: осталась Папка, Книга отсутствует, после очистки пусто.
Повторите цепочку на бумаге: после удаления Книги и Ручки индекс 0 принадлежит Бумаге, а не исходной Книге.
Ожидаемый результат
На конкретных ключах показаны перегрузки удаления и сдвиг позиций.
На что обратить внимание
Не угадывайте перегрузку по смыслу переменной: её тип определяет вариант вызова.
Нельзя сохранять прежние индексы и применять их после удаления нескольких элементов.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.