Расширение поля формы для поля планировщика.ОбработкаФормированияКоманд

События · CommandGenerateProcessing

Событие при нажатии правой или левой кнопки мыши в поле планировщика. Возникает до события ПередСозданием, ПередНачаломБыстрогоРедактирования, НажатиеНаЭлементеИзмерения, НажатиеНаЭлементеШкалыВремени, НажатиеНаПеренесенномЗаголовкеШкалыВремени.

Синтаксис

ОбработкаФормированияКоманд(<ПараметрыКоманд>, <Команды>, <КомандаПоУмолчанию>)
Полное описание, параметры и ограничения

Расширение поля формы для поля планировщика.ОбработкаФормированияКоманд (Form field extension for a planner.CommandGenerateProcessing)

Расширение поля формы для поля планировщика (Form field extension for a planner)

ОбработкаФормированияКоманд (CommandGenerateProcessing)

Доступен, начиная с версии 8.3.16.

Синтаксис:
ОбработкаФормированияКоманд(<ПараметрыКоманд>, <Команды>, <КомандаПоУмолчанию>)
Параметры:

<ПараметрыКоманд>
Тип: ПараметрыФормированияКомандПоляПланировщика.
Параметры формирования команд планировщика.

<Команды>
Тип: Массив.
Список команд, которые можно добавить. Значения элементов массива имеют тип ОписаниеКомандыПоляПланировщика. Значения другого типа игнорируются.
При вызове список заполнен командами контекстного меню по умолчанию. Команды, добавленные в контекстное меню через свойство поля КонтекстноеМеню, не будут добавлены в данный массив.
Возвращаемое значение.

<КомандаПоУмолчанию>
Тип: ОписаниеКомандыПоляПланировщика, Неопределено.
Определяет команду по умолчанию по нажатию левой кнопки мыши. Если команда задана, то при нажатии левой кнопки мыши она выполняется сразу.
Если команда не задана, то при нажатии на левой кнопки мыши отображается контекстное меню.
Возвращаемое значение.
Описание:

Событие при нажатии правой или левой кнопки мыши в поле планировщика. Возникает до события ПередСозданием, ПередНачаломБыстрогоРедактирования, НажатиеНаЭлементеИзмерения,
НажатиеНаЭлементеШкалыВремени,
НажатиеНаПеренесенномЗаголовкеШкалыВремени.

Доступность:

Тонкий клиент, веб-клиент, мобильный клиент, толстый клиент, мобильное приложение (клиент).

См. также:
ИсточникКомандПоляПланировщика, свойство Элементы
ИсточникКомандПоляПланировщика, свойство ЭлементИзмерения
ИсточникКомандПоляПланировщика, свойство ПустаяОбластьЭлементов
ИсточникКомандПоляПланировщика, свойство ЭлементШкалыВремени
ИсточникКомандПоляПланировщика, свойство ОбластьПеренесенногоЗаголовкаШкалыВремени

Использование в версии:

Доступен, начиная с версии 8.3.16.

Описание изменено в версии 8.3.23.

Методическая информация

Практические примеры

Разобрать источник меню своего планировщика

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

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

Модуль своей управляемой формы: клиентские события поля планировщика, серверная подготовка отдельно.

Подготовка

  1. Создайте собственную внешнюю учебную обработку с управляемой формой. Реквизит УчебныйПлан типа Планировщик, поле ПолеПлана вида ПолеПланировщика с путём УчебныйПлан.

  2. Реквизиты формы Статус (Строка 200), РазрешитьУдаление (Булево), ЗапретитьСворачивание (Булево); выведите их на форму. Это только свои данные в памяти.

  3. Основной / подготовительный серверный блок назначьте событию формы ПриСозданииНаСервере. Клиентские события назначаются ПолеПлана, не самой форме.

  4. Откройте собственную обработку в тонком клиенте. План показывает 15 октября 2026 года 09:00–17:00, две встречи 10:00–11:00 и 10:15–11:15. Никаких календарей рабочей базы, пользователей, отправки, печати или записи документов нет.

&НаКлиенте
Процедура ПолеПланаОбработкаФормированияКоманд(Элемент, ПараметрыКоманд, Команды, КомандаПоУмолчанию)
    Оповещение = Новый ОписаниеОповещения("ПамяткаСвоегоПлана", ЭтотОбъект);
    Памятка = Новый ОписаниеКомандыПоляПланировщика;
    Памятка.Команда = Оповещение;
    Памятка.Представление = "Сколько своих встреч";
    Команды.Добавить(Памятка);
    КомандаПоУмолчанию = Неопределено;
    Сообщить("Своя команда добавлена; автоматическое действие не назначено");
КонецПроцедуры
Та же форма: точный собственный источник плана для этого события
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    План = Новый Планировщик;
    План.НачалоПериодаОтображения = Дата(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));
    Вторая.Значение = "УЧЕБНАЯ-ПРОВЕРКА";
    Вторая.Текст = "Проверка учебного задания";
    РазрешитьУдаление = Ложь;
    ЗапретитьСворачивание = Истина;
    Статус = "Собственный план подготовлен";
    УчебныйПлан = План;
КонецПроцедуры
Та же форма: экспортный callback собственной команды плана
&НаКлиенте
Процедура ПамяткаСвоегоПлана(ДополнительныеПараметры) Экспорт
    Статус = "Собственных встреч: " + Строка(УчебныйПлан.Элементы.Количество());
    Сообщить(Статус);
КонецПроцедуры

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

  1. Создайте собственный план и элементы формы точно по подготовке.

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

  3. Выполните указанный жест / команду и проверьте результат только на своём плане.

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

  1. В указанной области своего плана появляется Сколько своих встреч; нажатие показывает реальное количество встреч.

  2. КомандаПоУмолчанию сброшена, поэтому левое нажатие предлагает меню, а не незаметно выполняет стандартное действие.

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

Событие или команда воспроизводятся на конкретном собственном плане; клиентское действие не объявляется записью в базу.

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

  1. Здесь используется современный ОписаниеКомандыПоляПланировщика, а не устаревшее описание старого меню.

  2. Параметры внутреннего и внешнего перетаскивания имеют разные типы и не взаимозаменяемы.

  3. BSL, переходы, печать и запись в рабочие календари агентом не выполнялись.

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

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

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

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

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