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

Статические объекты

Статические (или встроенные) объекты - это объекты, которые определяются разработчиком и автоматически встраиваются в систему при старте (если на момент старта они в системе отсуствуют). Кроме того, такие объекты запрещено удалять.

При объявлении пользовательского класса можно объявить объекты этого класса, которые будут являться статическими объектами. Если это сделать, этот пользовательский класс автоматически наследуется от класса System.StaticObject.

Каждому статическому объекту пользовательского класса необходимо задать определенное имя и заголовок, к которым впоследствии можно обращаться при помощи свойств System.staticName[System.StaticObject] и System.staticCaption[System.StaticObject] соответственно.

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

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

Язык

Статические объекты пользовательских классов задаются в инструкции CLASS в блоке, ограниченном фигурными скобками.

Примеры

CLASS Direction 'Направление'
{
north 'Север',
east 'Восток',
south 'Юг',
west 'Запад'
}

direction = DATA Direction ();

showDirection {
MESSAGE staticName(direction());
MESSAGE staticCaption(direction());
}

// создаем форму по выбору объекта класса Direction
FORM directions 'Направления'
OBJECTS d = Direction
PROPERTIES(d) READONLY staticCaption

LIST Direction OBJECT d
;