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