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