Перейти к основному содержимому

Свойства компонента интерфейса, унаследованного от компонента «Форма»

Компонент интерфейса, предназначенный для редактирования объектов сущностей, работы со списками экземпляров сущностей и аналогичных действий. Для него определены действия открытия и закрытия.

При открытии формы в модальном или всплывающем окне возвращает значение типа ТипРезультата. По умолчанию — Неопределено. Если закрыть форму нажатием на крестик или кликом за пределами окна при открытии во всплывающем окне или вызвать метод Закрыть() без передачи аргумента, результатом открытия будет Неопределено.

Для открытия формы в коде используется метод Открыть(). Его поведение зависит от значения свойства СпособОткрытия. Если свойству присвоено значение ВМодальномОкне или ВоВсплывающемОкне, то метод ожидает завершения работы с окном и возвращает значение, переданное в метод Закрыть(), или Неопределено, если форма была закрыта нажатием на крестик. В остальных случаях метод возвращает Неопределено и передает управление вызывающему коду сразу после открытия окна.

Чтобы закрыть форму, вызовите метод Закрыть(). Вы можете проанализировать возвращаемое значение этого метода, чтобы узнать, закрыта форма (Истина) или нет (Ложь).

Иерархия наследования

Свойства

ВключатьВАвтоИнтерфейс

Признак того, что «1С:Исполнитель» включит команду открытия этой формы в автоматический интерфейс. Стандартное значение Ложь.

ДополнительныеКоманды

Экземпляр ФрагментКомандногоИнтерфейса<ТипКоманды>, состоящий из команд. Список дополнительных команд формы. Отображаются в правой части заголовка формы (веб-интерфейс) или под заголовком формы (мобильный интерфейс).

Заголовок

Авто|Строка. Заголовок формы

ЗаголовокКомандыСоздания

Заголовок кнопки создания на форме списка. Если заголовок задан, то в веб-интерфейсе кнопка отображается в заголовке формы, а в мобильном интерфейсе отображается плавающая кнопка

Закрыть

Команда. Команда закрытия формы

Изображение

Задает картинку для автогенерируемой навигационной команды <ИмяФормы>.ОткрытьФорму.

КомандыСоздания

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

Пример команды создания Добавить сотрудника в веб-интерфейсе:

ОбычныеКоманды

Экземпляр ФрагментКомандногоИнтерфейса<ТипКоманды>, состоящий из команд. Список основных команд формы. Отображаются в нижней панели команд формы в виде обычных кнопок. Обычные команды отображаются после основной команды.

ОсновнаяКоманда

ОбычнаяКоманда. Задает команду, которая определяет главное действие формы. Здесь мы рекомендуем использовать команду, после вызова которой форма будет закрыта. Типичные примеры:

  • Сохранить (и закрыть)
  • Отправить (письмо)
  • Закрыть

Отображается в нижней панели команд формы. Выглядит как основная кнопка.

ПовторноеИспользованиеФормы

Авто|Булево. Признак повторного использования формы. Возможные значения свойства:

  • Авто — (по умолчанию) система сама определяет, может ли форма использоваться повторно. Формы списков по возможности используются повторно, остальные формы — нет.
  • Истина — форма используется повторно. Форма, открытая в основной области, при закрытии не удаляется. При повторном открытии формы открывается тот же самый экземпляр.
  • Ложь — форма не используется повторно.

ПодсказкиПриПервомОткрытии

ПоследовательностьОбучающихПодсказок. Последовательность подсказок, которая запускается автоматически при первом открытии формы. Если данная последовательность уже была просмотрена пользователем до конца, то больше она запускаться не будет.

Состоит из элементов типа ОбучающаяПодсказка. Обучающая подсказка обладает следующими свойствами:

  • Заголовок — заголовок подсказки
  • Описание — текст внутри подсказки
  • ОпорныйЭлемент — компонент, около которого появляется подсказка.
  • Изображение — изображение внутри подсказки

Подсказки при первом открытии

Пример:

YAML-файл формы объекта «Сделки»
ВидЭлемента: КомпонентИнтерфейса
Ид: 63ddc157-05cd-4187-8d86-546634e011d6
Имя: СделкиФормаОбъекта
ОбластьВидимости: ВПроекте
Наследует:
Тип: ФормаОбъекта<Сделки.Объект>
Заголовок: ПолучитьЗаголовокФормы()
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: РазделяющаяГруппа
Содержимое:
-
Заголовок: $ЛокализованныеСтроки.Основное
ОтступПоГоризонтали: Одинарный
Содержимое:
-
Тип: ПолеВвода<Клиенты.Ссылка?>
Имя: ПолеВводаКлиент
Заголовок: $ЛокализованныеСтроки.Клиент
Значение: =Объект.Клиент

-
Тип: ПолеВвода<Направления.Ссылка?>
Имя: ПолеВводаНаправление
Заголовок: $ЛокализованныеСтроки.Направление
Значение: =Объект.Направление
Обязательное: Истина
ПодсказкиПриПервомОткрытии:
Тип: ПоследовательностьОбучающихПодсказок
Элементы:
-
Заголовок: Приветствую! 🤝
Изображение: ОбучающиеПодсказки/Приветствие.png
Описание: "Позвольте помочь вам создать новую сделку! Сделка отражает процесс
оказания услуги клиенту нашей компании на каждой стадии этого процесса.
Для начала нужно выбрать клиента."
ОпорныйЭлемент: =Компоненты.ПолеВводаКлиент
-
Заголовок: Выбор направления
Описание: "Сделка может относиться к одному из нескольких направлений, по которым
наша компания предоставляет услуги."
ОпорныйЭлемент: =Компоненты.ПолеВводаНаправление

По умолчанию последовательность обучающих подсказок запускается при открытии формы и переключается по кнопке Далее. Однако вы также можете управлять их поведением через специальные методы формы: ЗапуститьОбучающиеПодсказки, ОстановитьОбучающиеПодсказки, ПоказатьСледующуюОбучающуюПодсказку. Для этого необходимо описать последовательность обучающих подсказок и вызвать соответствующий метод в модуле формы.

Пример открытия последовательности обучающих подсказок при нажатии на кнопку:

ВидЭлемента: КомпонентИнтерфейса
Ид: 6e1a945d-f5c0-4a54-b4e0-0bd7ef2f3eb0
Имя: ТестПереключенияПодсказок
ОбластьВидимости: ВПодсистеме
Наследует:
Тип: Форма
Заголовок: Тест возможных кейсов при переключении подсказок
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
ВыравниваниеСодержимогоПоВертикали: Центр
Рамка: Истина
Содержимое:
-
# Описание кнопки, при нажатии на которую будет запускаться
# последовательность обучающих подсказок.
Тип: Кнопка
Имя: КнопкаЗапускающаяТуториал
Заголовок: Запустить туториал на дальнюю страницу
Вид: Основная
РастягиватьПоГоризонтали: Истина
ПриНажатии: СгенерироватьТуториал
// Обработчик кнопки «ПриНажатии». Внутри обработчика осуществляется
// создание и запуск последовательности обучающих подсказок.
метод СгенерироватьТуториал(Источник: Кнопка, Событие: СобытиеПриНажатии)
пер Последовательность = новый ПоследовательностьОбучающихПодсказок([
новый ОбучающаяПодсказка(
ОпорныйЭлемент = Компоненты.ПропадающаяГруппа,
Заголовок = "Приветствую! 🤝",
Описание =
"Позвольте помочь вам создать новую сделку! Сделка отражает процесс
оказания услуги клиенту нашей компании на каждой стадии этого процесса.
Для начала нужно выбрать клиента."
)
])

этот.ЗапуститьОбучающиеПодсказки(Последовательность)
;

ОтступПоВертикали

Вертикальный отступ от границы компонента до его содержимого:

  • Авто — размер отступа рассчитывается автоматически;
  • элементы перечисления РазмерОтступа — Половинный, Одинарный, Полуторный, Двойной, Отсутствует.

ОтступПоГоризонтали

Горизонтальный отступ от границы компонента до его содержимого:

  • Авто — размер отступа рассчитывается автоматически;
  • элементы перечисления РазмерОтступа — Половинный, Одинарный, Полуторный, Двойной, Отсутствует.

Содержимое

Экземпляр компонента, расположенный в данном компоненте. Содержит следующие свойства:

Тип

Обязательное. Имя компонента, экземпляр которого вы описываете. Это может быть системный компонент или компонент интерфейса. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

Имя

Имя экземпляра компонента. По этому имени можно будет обратиться к экземпляру. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Имя: Флажки
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

Например, к его свойству Видимость:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Видимость: =Компоненты.Флажки.Видимость
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Имя: Флажки
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

ОтслеживатьИзменениеДанных

Не обязательное. По умолчанию Ложь.

Если Истина, то «Исполнитель» будет учитывать изменение данных в этом экземпляре при вычислении свойства РассчитаннаяМодифицированность у экземпляра этого компонента интерфейса. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
ОтслеживатьИзменениеДанных: Истина
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

<Свойство компонента>

Значение свойства компонента в этом экземпляре. Если тип свойства составной (включает несколько типов), необходимо указать тип значения. Иначе просто само значение. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
Ориентация: Горизонтальная
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

<Событие компонента>

Имя метода, обрабатывающего событие компонента в этом экземпляре. Метод должен находиться в модуле компонента. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>
ВключатьВАвтоИнтерфейс: Ложь
Содержимое:
Тип: ПроизвольныйШаблонФормы
Содержимое:
Тип: ФиксированнаяГруппа
ПриНаведении: ОбработчикПриНаведении
Содержимое:
-
Тип: Флажок
Имя: ЗагружатьВсе
Заголовок: Загружать все данные
Значение:
Тип: Булево
Значение: Истина
-
Тип: Флажок
Имя: ПерезаписыватьСтарые
Заголовок: Перезаписывать старые элементы

СпособОткрытия

Авто|СпособОткрытияФормы. Позволяет указать, в каком окне будет открыта форма при вызове метода Открыть(). Может принимать следующие значения:

  • Авто — открывает формы объекта и записи в диалоговых окнах, остальные — в рабочей области приложения.

  • ВРабочейОбласти — открывает форму в основной рабочей области приложения (рекомендуется использовать для списков и форм навигации).

    Форма списка, открытая в рабочей области приложения

  • ВДиалоговомОкне — открывает форму в диалоговом окне (рекомендуется использовать для форм сущностей). Диалоговое окно блокирует рабочую область, однако его можно свернуть, чтобы вернуться к приложению.

    Форма объекта, открытая в диалоговом окне

  • ВМодальномОкне — открывает форму в модальном окне (рекомендуется использовать, когда требуется получить от пользователя данные, необходимые для продолжения операции). Модальное окно блокирует родительское диалоговое окно (при наличии) или рабочую область приложения. Сворачивается вместе с родительским окном.

    Форма объекта, открытая в модальном окне

  • ВоВсплывающемОкне — открывает форму во всплывающем окне (рекомендуется использовать для форм выбора).

    Всплывающее окно

ВесПриРастягивании

Значимость данного компонента по сравнению с другими растягиваемыми компонентами. Например, если у данного компонента ВесПриРастягивании = 1, а у другого ВесПриРастягивании = 2, то другой компонент будет в 2 раза больше данного (подробнее). Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
ВесПриРастягивании: 2

ВыравниваниеВГруппеПоВертикали

Способ вертикального выравнивания этого компонента внутри родительской группы:

  • Авто — значение ВыравниваниеПоВертикали.ПоБазовойЛинии;
  • элементы перечисления ВыравниваниеПоВертикали — Верх, Центр, Низ, ПоБазовойЛинии.

Позволяет управлять индивидуальным положением этого компонента в группе, если размер группы больше размера, требуемого всем ее компонентам. Например, если «Исполнитель» растягивает группу, а компоненты в ней не растягивает.

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

Если у компонентов внутри группы указаны разные способы вертикального положения, которые входят в конфликт друг с другом, то «Исполнитель» будет использовать для всех конфликтных компонентов тот способ, который указан у первого из них. Например, если у первого конфликтного компонента в группе указано положение Низ, а у второго Верх, то оба компонента окажутся внизу.

Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
ВыравниваниеВГруппеПоВертикали: Центр

Видимость

Показать или скрыть компонент. Фактическая видимость компонента зависит от видимости его родительских компонентов. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
Видимость: Ложь

Высота

Авто|Число. Высота компонента в пикселях (подробнее).

Если Авто, то рассчитывается автоматически. Если отлична от 0 и РастягиватьПоВертикали вычислено как Ложь, то компонент будет иметь указанную высоту. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
Высота: 300

ВыравниваниеВГруппеПоГоризонтали

Способ горизонтального выравнивания этого компонента внутри родительской группы:

  • Авто — значение ВыравниваниеПоГоризонтали.Начало;
  • элементы перечисления ВыравниваниеПоГоризонтали — Начало, Центр, Конец, ПоШирине.

Позволяет управлять индивидуальным положением компонента в группе, если размер группы больше размера, требуемого всем ее компонентам. Например, если «Исполнитель» растягивает группу, а компоненты в ней не растягивает.

Для компонента, расположенного внутри горизонтальной группы, это свойство имеет смысл только в том случае, если этот компонент крайний. Например, если компоненты группы расположены в начале, то последний компонент можно расположить в конце.

Если у компонентов внутри группы указаны разные способы горизонтального положения, которые входят в конфликт друг с другом, то «Исполнитель» будет использовать для всех конфликтных компонентов тот способ, который указан у первого из них. Например, если у первого конфликтного компонента в группе указано положение Конец, а у второго Начало, то оба компонента окажутся в конце группы.

Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
ВыравниваниеВГруппеПоГоризонтали: Конец

Доступность

Способность компонента принимать фокус и редактировать данные. Состояние доступности распространяется на все компоненты содержимого, пока не встретится переопределение этого свойства. Имеет приоритет над свойством ТолькоЧтение. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
Доступность: Ложь

МаксимальнаяВысота

Максимальная высота компонента в пикселях. Свойство используется, если РастягиватьПоВертикали вычислено как Истина. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
МаксимальнаяВысота: 100

МаксимальнаяШирина

Максимальная ширина компонента в пикселях. Свойство используется, если РастягиватьПоГоризонтали вычислено как Истина. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
МаксимальнаяШирина: 300

МинимальнаяВысота

Минимальная высота компонента в пикселях. Свойство используется, если РастягиватьПоВертикали вычислено как Истина. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
МинимальнаяВысота: 100

МинимальнаяШирина

Минимальная ширина компонента в пикселях. Свойство используется, если РастягиватьПоГоризонтали вычислено как Истина. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
МинимальнаяШирина: 300

РастягиватьПоВертикали

Авто|Булево. Необходимость растягивания компонента по всей доступной высоте (подробнее).

Доступная высота — это высота родительской группы, которая определяется:

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

Значения:

  • Истина — «Исполнитель» растягивает компонент, несмотря на значения свойств Высота или Ширина;
  • Ложь;
  • Авто — имеет различное поведение в зависимости от типа компонента:
    • Компоненты, не перечисленные далее - Ложь
    • Таблица - Истина
    • Группа, Страницы - анализируются вычисленные значения растягивания у компонентов содержимого. Если хотя бы одно из них равно Истина, то используется Истина, иначе — Ложь.
    • МатричнаяГруппа - если хотя бы для одной колонки или столбца включено растягивание, то Истина, иначе Ложь. Если у матричной группы задано фиксированное количество колонок или строк, то компоненты содержимого так же проверяются на наличие растягиваемых.
    • ПроизвольныйКомпонент, Страница - используется вычисленное значение этого свойства у того компонента, который указан в свойстве Содержимое.
    • СтековаяГруппа - используется вычисленное значение этого свойства у последнего из компонентов содержимого.

Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
РастягиватьПоВертикали: Ложь

РастягиватьПоГоризонтали

Необходимость растягивания компонента по всей доступной ширине (подробнее).

Доступная ширина — это ширина родительской группы, которая определяется:

  • либо также растягиванием по ее родительской группе;
  • либо компонентом содержимого с максимальным значением свойства Ширина.

Значения:

  • Истина — «Исполнитель» растягивает компонент, несмотря на значения свойств Высота или Ширина;
  • Ложь;
  • Авто — имеет различное поведение в зависимости от типа компонента:
    • Компоненты, не перечисленные далее - Ложь
    • Таблица - Истина
    • Группа, Страницы - анализируются вычисленные значения растягивания у компонентов содержимого. Если хотя бы одно из них равно Истина, то используется Истина, иначе — Ложь.
    • МатричнаяГруппа - если хотя бы для одной колонки или столбца включено растягивание, то Истина, иначе Ложь. Если у матричной группы задано фиксированное количество колонок или строк, то компоненты содержимого так же проверяются на наличие растягиваемых.
    • ПроизвольныйКомпонент, Страница - используется вычисленное значение этого свойства у того компонента, который указан в свойстве Содержимое.
    • СтековаяГруппа - используется вычисленное значение этого свойства у последнего из компонентов содержимого.

Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
РастягиватьПоГоризонтали: Истина

ТолькоЧтение

Запрет редактирования данных компонента. Если флажок установлен, то компонент может принимать фокус, текст более четкий, его данные можно просматривать и копировать. В этом состоянии некоторые компоненты могут сохранять свою интерактивность, которая не влечет за собой изменение каких-либо данных. Состояние ТолькоЧтение распространяется на все компоненты содержимого, пока не встретится переопределение этого свойства. Имеет более низкий приоритет, чем свойство Доступность. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
ТолькоЧтение: Истина

Ширина

Авто|Число. Ширина компонента в пикселях (подробнее).

Если Авто, то рассчитывается автоматически. Если отлична от 0 и РастягиватьПоГоризонтали вычислено как Ложь, то компонент будет иметь указанную высоту. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
Ширина: 300

НастройкиТипа

Контракты, которые реализует компонент интерфейса

  • Контракты

Массив<Тип>. Имена контрактов типа, которые реализует данный компонент.

<Свойство разработчика>

Собственное свойство компонента (добавленное вами). Каждое собственное свойство описывается следующими свойствами:

ЗначениеПоУмолчанию

Стандартное значение свойства. Значение можно не указывать, если у его типа/типов есть значение по умолчанию (в частности, если его тип включает Неопределено или Null). Если тип свойства составной (включает несколько типов), необходимо указать тип значения. Иначе просто само значение. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Свойства:
-
Имя: Готовность
Тип: Булево
ЗначениеПоУмолчанию:
Ложь
-
Имя: Проверено
Тип: Булево|Строка
ЗначениеПоУмолчанию:
Тип: Булево
Значение: Ложь
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>

В описании экземпляра этого компонента вы можете установить другое значение этому свойству

Имя

Имя свойства. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Свойства:
-
Имя: ЭлектроннаяПочта
Тип: Строка
-
Имя: Пользователь
Тип: Пользователи.Ссылка?
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>

Контекстное

Булево. Признак доступности значения свойства на клиенте и сервере. Значение по умолчанию — Ложь. Если Истина, то поле Тип свойства должно содержать тип, доступный на клиенте и сервере.

«1С:Исполнитель» генерирует структурный тип {ИмяКомпонента}.Контекст, который содержит как собственные контекстные свойства, так и контекстные свойства, наследуемые от базовых системных типов. Этот тип генерируется всегда, даже если контекстные свойства отсутствуют.

Пример:

Имя: МойКомпонент
Свойства:
-
Имя: КонтекстноеСвойство
Тип: Строка
Контекстное: Истина

Для работы с контекстными свойствами на сервере вы можете использовать контекстные серверные методы. Эти методы должны располагаться в модуле компонента интерфейса и содержать аннотации @Контекстный и @НаСервере. В теле метода тип объекта этот заменяется на {ИмяКомпонента}.Контекст. Состояние этого объекта передается с клиента на сервер при каждом вызове метода. На сервере в теле метода вы можете изменить состояние объекта. Измененное состояние будет автоматически передано на клиент, и компонент будет инициализирован заново с учетом внесенных изменений.

Пример изменения значения контекстного свойства на сервере:

@НаСервере @ДоступноСКлиента
@Контекстный
метод КонтекстныйМетод()
этот.ПолучитьТип() // Вернет "ИмяКомпонента.Контекст"
// Задание значения контекстного свойства на сервере
КонтекстноеСвойство = "Значение"
;

СохраняемыеДанные

Истина — при изменении значения этого свойства «Исполнитель» установит свойство СобственнаяМодифицированность элемента компонента в значение Истина. В значение Ложь свойство СобственнаяМодифицированность вам нужно установить самостоятельно после записи данных. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Свойства:
-
Имя: ЭлектроннаяПочта
Тип: Строка
СохраняемыеДанные: Истина
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>

Тип

Тип свойства. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 9f51db7f-c98d-499c-9607-545d5e0a58c2
Имя: МояФормаОбъекта
Свойства:
-
Имя: ЭлектроннаяПочта
Тип: Строка
-
Имя: Пользователь
Тип: Пользователи.Ссылка?
-
Имя: Проверено
Тип: Булево|Строка|?
Наследует:
Тип: ФормаОбъекта<МойСправочник.Объект>

<Событие разработчика>

Собственные события компонента (добавленные вами). Здесь вы описываете только само событие, обработчик для этого события вы назначите при описании экземпляра этого компонента. О вызове и назначении обработчиков собственных событий компонента можно прочитать здесь. Каждое событие описывается следующими свойствами:

Имя

Имя события. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 4a2f1305-d442-41e2-9c07-5aaebbe6bdeb
Имя: МояПроизвольнаяСтрокаСписка
События:
-
Имя: ВыбратьСотрудника
Тип: СобытиеСДанными<ДанныеМероприятия>
Наследует:
Тип: ПроизвольнаяСтрокаСписка<МояСтруктура>

Тип

Тип объекта события:

  • тип должен быть наследником типа СобытиеКомпонента;
  • если значение не указано, то тип события — СобытиеКомпонента.
ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 4a2f1305-d442-41e2-9c07-5aaebbe6bdeb
Имя: МояПроизвольнаяСтрокаСписка
События:
-
Имя: ВыбратьСотрудника
Тип: СобытиеСДанными<ДанныеМероприятия>
Наследует:
Тип: ПроизвольнаяСтрокаСписка<МояСтруктура>

Тип

Тип наследуемого компонента. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 746eb2b7-5067-4ee4-badd-16751a6ecd16
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа

Имя

Имя элемента проекта или компонента. Пример YAML-файла:

ВидЭлемента: Справочник
ОбластьВидимости: ВПодсистеме
Имя: МойСправочник
Ид: 64cdbccd-a768-4877-9fdd-4f7ea44c2600

Импорт

Список импортированных пространств имен (подробнее). Пример YAML-файла:

ВидЭлемента: Справочник
ОбластьВидимости: ВПодсистеме
Имя: МойСправочник
Ид: 64cdbccd-a768-4877-9fdd-4f7ea44c2600
Импорт:
- Главная
- Настройки::НовыйПакет

Ид

Идентификатор элемента проекта или компонента. «1С:Исполнитель» создает этот идентификатор автоматически. Пример YAML-файла:

ВидЭлемента: Справочник
ОбластьВидимости: ВПодсистеме
Имя: МойСправочник
Ид: 64cdbccd-a768-4877-9fdd-4f7ea44c2600

ОбластьВидимости

Видимость элемента проекта (подробнее):

  • ВПодсистеме — элемент виден внутри одной подсистемы во всех пакетах. Значение по умолчанию.
  • ВПроекте — элемент виден во всех подсистемах одного проекта.
  • Глобально — элемент виден во всех подсистемах всех проектов.

Пример YAML-файла:

ВидЭлемента: Справочник
ОбластьВидимости: ВПодсистеме
Имя: МойСправочник
Ид: 64cdbccd-a768-4877-9fdd-4f7ea44c2600

ВидЭлемента

Вид элементов проекта (подробнее)либо компонент интерфейса (подробнее). Пример YAML-файла элемента проекта:

ВидЭлемента: Справочник
ОбластьВидимости: ВПодсистеме
Имя: МойСправочник
Ид: 64cdbccd-a768-4877-9fdd-4f7ea44c2600

Пример YAML-файла компонента:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа

События

ПередЗакрытием

Вызывается перед закрытием формы. Для обработки закрытия формы используется обработчик ПередЗакрытием:

@Обработчик
метод ПередЗакрытием(Событие: ПараметрыЗакрытияФормы)
// Обработка закрытия формы
;

Свойство РежимЗакрытияФормы объекта ПараметрыЗакрытияФормы содержит признак отказа от закрытия формы. Возможные значения:

  • Авто — выполняется стандартная обработка, закрытие формы зависит от ее результата;
  • РежимЗакрытияФормы.Закрыть — стандартная обработка не выполняется, форма закрывается;
  • РежимЗакрытияФормы.НеЗакрывать — стандартная обработка не выполняется, форма не закрывается.

ПослеЗакрытия

Вызывается, когда форма уже закрыта и процесс закрытия нельзя отменить или прервать. Для обработки каких-либо действий используется обработчик ПослеЗакрытия:

@Обработчик
метод ПослеЗакрытия()
// Действия после закрытия формы
;

ПослеСоздания

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

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

Сигнатура обработчика на встроенном языке:

@Обработчик
метод ПослеСоздания()
;

ПриНаведении

Назначаемое событие. Вызывается при наведении указателя мыши на область компонента. Особенности вызова события:

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

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

В примере ниже показано использование событий ПриНаведении и ПриПотереНаведения для изменения цвета картинки при наведении на нее указателя мыши:

Тип: Картинка
Изображение: Дом.svg
ПриНаведении: ПриНаведении
ПриПотереНаведения: ПриПотереНаведения

Обработка событий во встроенном языке:

метод ПриНаведении(Источник: Компонент, Событие: СобытиеКомпонента)
(Источник как Картинка).Цвет = Цвета.Стилевые.АкцентныйПервичный
;

метод ПриПотереНаведения(Источник: Компонент, Событие: СобытиеКомпонента)
(Источник как Картинка).Цвет = Авто
;

ПриПеретаскивании

Назначаемое событие. Возникает при окончании перетаскивания, например, при перетаскивании файлов из проводника на компонент. Если обработчик события не установил свойство СобытиеПриПеретаскивании.СтандартнаяОбработка равным Ложь, то происходит системная обработка события (она есть, например, у компонента ВыборФайлов), после чего «Исполнитель» вызывает событие у родительского по визуальной иерархии компонента, вплоть до компонента, унаследованного от КлиентскоеПриложение. Пример YAML-файла:

ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: d3f2fad1-4ce1-444b-8aaa-b37425f4f6bb
Имя: МояГруппа
Наследует:
Тип: ФиксированнаяГруппа
ПриПеретаскивании: ОбработчикПриПеретаскивании

Сигнатура обработчика события на встроенном языке:

метод ОбработчикПриПеретаскивании(Компонент: Компонент, 
Событие: СобытиеПриПеретаскивании)
;

ПриПотереНаведения

Назначаемое событие. Вызывается, когда указатель мыши покидает область компонента. Особенности вызова события:

  • Если событие срабатывает для вложенных элементов (курсор смещается за пределы родительского элемента), то сначала оно вызывается для дочернего элемента, а затем для родительского.
  • Событие не вызывается при удалении компонента, изменении его видимости или размера (если в результате указатель мыши больше не находится над областью компонента).
  • Событие не поддерживается на мобильных устройствах.

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

В примере ниже показано использование событий ПриНаведении и ПриПотереНаведения для изменения цвета картинки при наведении на нее указателя мыши:

Тип: Картинка
Изображение: Дом.svg
ПриНаведении: ПриНаведении
ПриПотереНаведения: ПриПотереНаведения

Обработка событий во встроенном языке:

метод ПриНаведении(Источник: Компонент, Событие: СобытиеКомпонента)
(Источник как Картинка).Цвет = Цвета.Стилевые.АкцентныйПервичный
;

метод ПриПотереНаведения(Источник: Компонент, Событие: СобытиеКомпонента)
(Источник как Картинка).Цвет = Авто
;