Редактор формы#

Форма - это xml-документ, который хранит настройки компоновщиков, типов фреймов, динамическое части и закладки. Настройки формы можно применить к отображениям, чтобы скопировать в нее разметку
По структуре редактор формы схож с редактором карточки. Он состоит из превью формы и дерева объектов с закладкой свойств этих объектов.

Интерфейс редактора карточки

Создание формы#

Для создания формы необходимо в обозревателе проекта выбрать Avi-файл интересующей выборки, вызвать операцию «Создать форму» и выбрать отображение, для которого будет строиться форма. После создания в каталоге появится файл разметки формы с расширением frm.xml.

Создание закладок и динамических частей#

К любым объектам можно добавлять любое количество закладок и динамических частей.

Свойства закладок и динамических частей#

Для закладок и динамических частей есть основные свойства: наименование, выборка и отображение, компоновщик, фрейм.

Для закладок можно также указать наименование, которое будет отображаться в названии, порядок отображения, Url и номер иконки, видимость.

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

Фиксированные и динамические закладки#

Фиксированные закладки - способ добавления закладок с помощью tabComposer. В таком режиме все закладки фрейма прописываются в avm. Устанавливается по умолчанию.

Динамические закладки - способ добавления закладок с помощью запроса. В настройке указывается выборка со списком закладок и отображение выборки, а так же дополнительные управляющие атрибуты.

Список закладок объекта#

Закладки объекта с фиксированным режимом закладок отображаются списком на закладке «Список».

Возможные закладки#

Закладки объекта с динамическим режимом закладок, заданные вручную отображаются на закладке «Возможные закладки».

Добавление возможных закладок#

Для возможных закладок создать закладку можно 3 способами:

  • Создать
    Создает пустую закладку - то же самое, что создать закладку из меню дерева.

  • Добавить все закладки класса из справочника закладок
    Позволяет выбрать класс, с которого будут скопированы все закладки

  • Добавить с выбором из справочника закладок
    Отображает все закладки из справочника закладок и добавляет выбранные

Интерфейс редактора карточки

Создание выборки и отображения#

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

  1. Создать новое отображение
    В выборке создается новое пустое отображение с заданным именем.

  2. Копировать отображение
    Копируется указанное отображение выборки. Разметка avm будет полностью скопирована, а в Avi будет создан трейт, наследующийся от исходной выборки.

  3. Создать по тексту запроса
    Анализируются параметры SQL-запроса и на его основе создается выборка. В открывшемся мастере можно задать параметры атрибутов.

  4. Создать по тексту case-класса
    Аналогично 3

Открытие в редакторе карточки#

Если у объекта указан фрейм card - в дереве у таких объектов активирован флажок в поле «Карточка» - можно перейти в редактор карточки для этого объекта. Для этого достаточно нажать на этот объект в превью формы. Объекты, по которым можно перейти в редактор карточки, подсвечиваются пиктограммой. Интерфейс редактора карточки

Превью формы#

Редактор умеет отображать:

  • списки - определяет поля, фильтры списка

  • карточки - рисуются по тому же алгоритму, что в редакторе карточки.

Примечание

Отображение выборки в превью может немного отличаться от того, что будет рисовать сервер приложения. Это связано с тем, что алгоритмы отрисовки немного отличаются. Сервер считает размеры в пикселях, превью - в процентах. В целом выборка в превью отображается правдоподобно.

Применение настройки формы к выборке#

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