Перейти к основному содержимому
Версия: 7.0

Инструкция EXTEND FORM

Инструкция EXTEND FORM - расширение существующей формы.

Синтаксис

EXTEND FORM formName 
[formBlock1
...
formBlockN]
;

Описание

Инструкция EXTEND FORM позволяет расширять существующую форму дополнительными блоками формы, записываемыми так же, как при объявлении формы. Внутри этих блоков можно ссылаться на объекты, свойства и действия, уже объявленные на форме, — например, чтобы разместить новый элемент относительно уже имеющегося или отфильтровать добавляемую группу объектов по объекту, уже имеющемуся на форме.

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

Параметры

  • formName

    Имя расширяемой формы. Составной идентификатор. Должно указывать на уже существующую форму, объявленную в этом или другом модуле; новая форма не создаётся. Заголовок и значок здесь не задаются — форма сохраняет те, что заданы при её объявлении.

  • formBlock1 ... formBlockN

    Блоки формы.

Примеры

CLASS ItemGroup;
name = DATA ISTRING[100] (ItemGroup);

itemGroup = DATA ItemGroup (Item);

EXTEND FORM items
PROPERTIES(i) NEWSESSION DELETE // добавляем на форму кнопку удаления

OBJECTS g = ItemGroup BEFORE i // добавляем на форму объект группы товаров перед товаром
PROPERTIES(g) READONLY name
// если бы объект был добавлен после объекта с товарами, то фильтрация шла бы по группе товаров,
// а не по товарам
FILTERS itemGroup(i) == g
;