Skip to end of metadata
Go to start of metadata

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

Все свойства в системе разбиваются на группы свойств. Все группы при этом образуют иерархию, в которой каждая группа может содержать в себе как свойства, так и другие группы свойств. Корневой группой в этой иерархии является группа System.root. Все остальные группы содержатся в некоторой родительской группе.

Каждое свойство или действие непосредственно принадлежит ровно одной группе, а также принадлежит всем предкам этой группы. Так, например, все свойства и действия в системе принадлежат группе System.root.

Встроенные группы свойств

Помимо root в модуле System автоматически создаются следующие группы свойств и действий :

  • root
    • public
      • base
        • id
    • private

Все эти группы (в том числе root) не используются в механизмах отображения форм (то есть контейнеры в дизайне форм по умолчанию и элементы иерархии иерархического импорта / экспорта для них не создаются).

Использование групп свойств

На данный момент группы свойств используются в следующих механизмах:

  • При отображении форм:
    • в интерактивном представлении - для каждой группы можно указать, что для нее в дизайне по умолчанию необходимо создавать отдельный контейнер. Соответственно, иерархия контейнеров в дизайне по умолчанию будет совпадать с иерархией таких групп свойств. То есть если для для группы свойств (свойства) A и группы свойств B необходимо создавать контейнер, а группа (свойство) A является потомком группы B, то и контейнер группы (компонент свойства) A будет потомком контейнера группы B.
    • в иерархическом представлении - для каждой группы можно указать, что для нее при экспорте формы необходимо создавать отдельный промежуточный тег. Соответственно, иерархия тегов при экспорте будет совпадать с иерархией таких групп свойств. То есть, если для группы свойств (свойства) A и группы свойств B необходимо создавать тег, а группа (свойство) A является потомком группы B, то и тег группы (свойства) A будет внутри тега группы B
  • При автоматическом создании форм:
    • Все свойства с одним аргументом, которые входят в группу System.base, будут отображаться в автоматически создаваемых диалоговых формах выбора / редактирования объектов. 
    • Все свойства с одним аргументом, которые входят в группу System.id, будут отображаться в автоматически создаваемых формах показа сообщения при нарушении ограничений.
  • В политике безопасности:
    • Можно задавать политику безопасности целиком по группе (а не по каждому свойству в отдельности).

Язык

Для добавления новой группы свойств и действий в систему используется инструкция GROUP.

1
2
 GROUP base : root; // Заголовком этой группы будет 'base'
GROUP local 'Локальные свойства'; // Родительской группой local будет являться System.private


  • No labels