Старое перечисление переводится явным соответствием в современный тип, затем результат реально участвует в обработке меню собственного поля.
Где и как запускать
Модуль своей управляемой формы: клиентские события поля планировщика, серверная подготовка отдельно.
Подготовка
Создайте собственную внешнюю учебную обработку с управляемой формой. Реквизит УчебныйПлан типа Планировщик, поле ПолеПлана вида ПолеПланировщика с путём УчебныйПлан.
Реквизиты формы Статус (Строка 200), РазрешитьУдаление (Булево), ЗапретитьСворачивание (Булево); выведите их на форму. Это только свои данные в памяти.
Основной / подготовительный серверный блок назначьте событию формы ПриСозданииНаСервере. Клиентские события назначаются ПолеПлана, не самой форме.
Откройте собственную обработку в тонком клиенте. План показывает 15 октября 2026 года 09:00–17:00, две встречи 10:00–11:00 и 10:15–11:15. Никаких календарей рабочей базы, пользователей, отправки, печати или записи документов нет.
Для СоздатьЭлемент используйте пустую область; РедактироватьЭлемент / БыстроРедактироватьЭлемент — одну встречу; УдалитьЭлементы — выделенные встречи; команды выбора — соответствующий заголовок; ВыполнитьДействие — Подробнее; команды ссылок — форматированную ссылку.
В этом варианте шкала развёрнута на двое суток с суточным переносом. Нажимайте перенесённый заголовок даты.
Это урок переноса старой настройки, а не включение устаревшего callback. Соответствие содержит ровно одну пару старое → новое; в приложении такие пары обычно собираются для всех поддерживаемых старых настроек.
&НаКлиенте
Процедура ПолеПланаОбработкаФормированияКоманд(Элемент, ПараметрыКоманд, Команды, КомандаПоУмолчанию)
Переход = Новый Соответствие;
Переход.Вставить(СтандартнаяКомандаПланировщика.ВыбратьПеренесенныйЗаголовокШкалыВремени, СтандартнаяКомандаПоляПланировщика.ВыбратьПеренесенныйЗаголовокШкалыВремени);
ТекущееЗначение = Переход.Получить(СтандартнаяКомандаПланировщика.ВыбратьПеренесенныйЗаголовокШкалыВремени);
Индекс = Команды.Количество() - 1;
Пока Индекс >= 0 Цикл
Если Команды[Индекс].Команда = ТекущееЗначение Тогда
Команды.Удалить(Индекс);
КонецЕсли;
Индекс = Индекс - 1;
КонецЦикла;
Если КомандаПоУмолчанию <> Неопределено Тогда
Если КомандаПоУмолчанию.Команда = ТекущееЗначение Тогда
КомандаПоУмолчанию = Неопределено;
КонецЕсли;
КонецЕсли;
Сообщить("В своём плане убрана только команда ВыбратьПеренесенныйЗаголовокШкалыВремени");
КонецПроцедурыТа же форма: точный собственный источник плана для этого события
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
План = Новый Планировщик;
План.НачалоПериодаОтображения = Дата(2026, 10, 15, 9);
План.КонецПериодаОтображения = Дата(2026, 10, 15, 17);
План.ТекущиеПериодыОтображения.Очистить();
План.ТекущиеПериодыОтображения.Добавить(План.НачалоПериодаОтображения, План.КонецПериодаОтображения);
План.ОтображатьТекущуюДату = Ложь;
План.ШкалаВремени.Положение = ПоложениеШкалыВремени.Верх;
Встреча = План.Элементы.Добавить(Дата(2026, 10, 15, 10), Дата(2026, 10, 15, 11));
Встреча.Значение = "УЧЕБНАЯ-ВСТРЕЧА";
Встреча.Текст = "Разбор собственной книги";
Вторая = План.Элементы.Добавить(Дата(2026, 10, 15, 10, 15), Дата(2026, 10, 15, 11, 15));
Вторая.Значение = "УЧЕБНАЯ-ПРОВЕРКА";
Вторая.Текст = "Проверка учебного задания";
РазрешитьУдаление = Ложь;
ЗапретитьСворачивание = Истина;
Статус = "Собственный план подготовлен";
План.КонецПериодаОтображения = Дата(2026, 10, 17);
План.ТекущиеПериодыОтображения.Очистить();
План.ТекущиеПериодыОтображения.Добавить(Дата(2026, 10, 15), Дата(2026, 10, 17));
План.ЕдиницаПериодическогоВарианта = ТипЕдиницыШкалыВремени.Час;
План.КратностьПериодическогоВарианта = 24;
План.ОтображатьПеренесенныеЗаголовкиШкалыВремени = Истина;
УчебныйПлан = План;
КонецПроцедурыРазбор по шагам
Создайте собственный план и элементы формы точно по подготовке.
Назначьте клиентский обработчик нужному полю: источник, приёмник либо заголовок имеют разный смысл.
Выполните указанный жест / команду и проверьте результат только на своём плане.
Как проверить результат
Выбранная стандартная команда убрана из собственного контекстного меню и, если это она, из команды по умолчанию.
Команда, не поддерживаемая текущим источником, не добавляется искусственно. Остальные команды и сам план сохраняются.
Ключ соответствия — реальное значение СтандартнаяКомандаПланировщика.ВыбратьПеренесенныйЗаголовокШкалыВремени, результат — СтандартнаяКомандаПоляПланировщика.ВыбратьПеренесенныйЗаголовокШкалыВремени. Разные перечисления нельзя считать одинаковыми только из-за совпадающего имени значения.
В событие возвращаются только современные описания команд. Устаревший ОписаниеКомандыПланировщика в массив текущего меню не подставляется.
Ожидаемый результат
Событие или команда воспроизводятся на конкретном собственном плане; клиентское действие не объявляется записью в базу.
На что обратить внимание
Здесь используется современный ОписаниеКомандыПоляПланировщика, а не устаревшее описание старого меню.
Параметры внутреннего и внешнего перетаскивания имеют разные типы и не взаимозаменяемы.
BSL, переходы, печать и запись в рабочие календари агентом не выполнялись.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.