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

Материал из Intellex
Перейти к навигации Перейти к поиску
 
Строка 199: Строка 199:


== Кнопка (button) ==
== Кнопка (button) ==
Позволяет добавить на панель кнопку, которую в последствие можно привязать к какомулибо действию, созданному в правилах заполнения (к примеру Апп-функция).
Позволяет добавить на панель кнопку, которую в последствие можно привязать к какому-либо действию, созданному в правилах заполнения (к примеру Апп-функция).
[[Файл:Кнопка 2.png|без|обрамить]]
[[Файл:Кнопка 2.png|без|обрамить]]
'''Свойства'''
'''Свойства'''

Текущая версия на 05:25, 28 июля 2022

Окно (window)

Родительский элемент для всех визуальных элементов. Соответствует окну в терминах операционной системы.

Окно.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
caption строка да да да Заголовок окна
resize строка нет 1|true нет да Допускает ли окно возможность изменения его размеров пользователем. Доступно начиная с XBF_3 и XMModule_3.0.xsd. Возможные значения "1"|"true" или "0"|"false" (независимы от регистра).

Примечание: если при обращении к этому атрибуту его значение в строковом виде равно "1" или "true", то оно принимается за true, в случае любых других значений включая пустую строку или NULL оно принимается за false.

focusedControl строка нет нет да Название компонента внутри текущего окна, на котором должен быть установлен фокус по умолчанию
onclose строка нет нет нет Действие, выполняемое при закрытии окна, не являющегося главным

Контейнер объектов (container)

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

Контейнер объектов 1.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
direction перечислимый нет vertical нет да Определяет способ расположения дочерний элементов
  • vertical - элементы располагаются по вертикали
  • horizontal - элементы располагаются по горизонтали
cssstylecontent строка нет нет да CSS Стиль блока с содержимым для контейнера
ratio число нет 1 нет нет Определяет пропорции ширины или высоты для контейнера
readonly строка нет 0|false да да Значение данного свойства обратно значению свойства enabled. Присвоение значения свойству readonly не имеет действия. Возможные значения "1"|"true" или "0"|"false" (независимы от регистра).

Примечание: если при обращении к этому атрибуту его значение в строковом виде равно "1" или "true", то оно принимается за true, в случае любых других значений включая пустую строку или NULL оно принимается за false.

Вкладки (tabsheet)

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

Вкладка 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
activeTabCaption строка только для чтения нет да Название активной вкладки. Если ни одна из вкладок не активна, то значение атрибута равно пустой строке.
activeTabPosition число только для чтения нет да Позиция активной вкладки. Нумерация вкладок начинается с единицы. Если ни одна из вкладок не активна, то значение атрибута равно нулю.
activeTab строка да да Название активной вкладки. Если название задано, при загрузке режима вкладка с этим названием становится активной
direction строка horizontal нет да Направление отображения вкладок (vertical - вкладки слева, контент - справа | horizontal - вкладки сверху, контент снизу)
cssstylecaption строка нет да Имя CSS стиля вкладки
cssstyleactive строка нет да Имя CSS стиля активной вкладки
enableCollapse булеан false нет да Возможность сворачивания (только для вкладок с направлением отображения "vertical")
collapsed число 0 нет да Положение по умолчанию (свернуты - 1, развернуты - 0)

Панель кнопок (toolbar)

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

Панель кнопок 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
readonly строка 0|false да да Значение данного свойства обратно значению свойства enabled. Присвоение значения свойству readonly не имеет действия. Возможные значения "1"|"true" или "0"|"false" (независимы от регистра).

Кнопка (button)

Позволяет добавить на панель кнопку, которую в последствие можно привязать к какому-либо действию, созданному в правилах заполнения (к примеру Апп-функция).

Кнопка 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступен из скрипта Описание
onclick действие нет нет да Название действия (action/actiongroup), выполняемое при нажатии на кнопку
iconname строка нет да да Наименование иконки из репозитория для отображения на кнопке
hint строка нет да да Текст всплывающей подсказки при наведении на кнопку

Текст/подпись (label)

Подпись.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступен из скрипта Описание
onclick действие нет нет нет Название действия (action/actiongroup), выполняемое при клике на тексте

Таблица (grid)

Компонент для отображения табличных данных.

Таблица 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
groupby строка нет да нет Перечисление колонок курсора для их группировки через запятую (Только для Delphi)
groupbox булеан нет true нет нет При истинном значении отображается поле для ручной группировки данных пользователем (Только для Delphi)
selectedRow строка курсора только чтение нет да Позволяет получить данные из выделенной в гриде строке, дополнительно указав название колонки в курсоре. Например выражение:
${window.grid.selectedRow.rw_name}

возвращает из выделенной строки грида grid значение ячейки в колонке с именем rw_name

selectedRows строка курсора только чтение нет да Позволяет получить данные из выделенных в гриде строк, дополнительно указав название колонки в курсоре. Например выражение:
${window.grid.selectedRows.rw_name}

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

selectedCell любой тип только чтение нет да Позволяет получить данные из выделенной ячейки грида. Например выражение:
${window.grid.selectedCell}

возвращает значение выделенной ячейки грида

selectedSourceField строка только чтение нет да Название колонки в курсоре данных, соответствующей выделенной колонки грида
${window.grid.selectedSourceField}
selectedGroup строка только чтение нет да Информация о группировке. Формат:
<group>

   

   <col_name>group_value</col_name>

</group>

Например, если данные в гриде сгруппированы по колонка A и B. Осуществляется попытка провалиться в итоги, где A="Значение A", B="Значение B", то результирующая строка будет

<group>

   <A>Значение A</A>

   <B>Значение B</B>

</group>

Не поддерживается в XM

selectioncolumn строка только чтение нет нет Имя колонки (поля), в котором пользователь сможет осуществлять выделение галочкой.

!!! поле с таким именем должно присутствовать в датасете, а колонка с этим полем - в списке колонок грида!!!

livecomplexheaders булеан нет false нет нет Признак того, что в случае сложных заголовков сохраняется возможность сортировать и фильтровать по столбцам грида.

Если этот атрибут равен "true", то значение атрибута numerate игнорируется и считается равным "false".

columnfiltereditemslist булеан нет false нет нет При фильтрации в фильтрах колонок грида присутствуют только значения видимые в результате применения фильтров по другим колонкам(иначе фильтры колонок содержат все значения).
groupHeaderLineCount число нет 1 нет нет Количество строк в заголовке группы.
cansort булеан нет true нет нет Дать возможность пользователю сортировать данные.
expandGroups булеан нет false нет нет Развернуть группировки.
checkedRows строка курсора только чтение нет да Позволяет получить данные из строк в гриде, отмеченными галочками, дополнительно указав колонку название колонки в курсоре. Значения будут перечислены через запятую.

Например выражение:

${window.grid.checkedRows.rw_id}

для отмеченных строк грида rw_id = 10 и rw_id=20 вернет "10,20"

Отмеченной строкой грида является та строка, у которой значение колонки из selectioncolumn равно истине

rowstyle строка нет нет да "Стиль строки" - Название колонки, содержащей информацию о раскраске строки таблицы. Формат раскраски описан в статье (Выделение цветом строк в окне фильтра) - TTTTTT$BBBBBB$SSSS
selectedRowStyle строка нет нет да "Стиль выделенной строки" - Название колонки, содержащей информацию о раскраске выделенной строки таблицы. Формат раскраски описан в статье (Выделение цветом строк в окне фильтра) - TTTTTT$BBBBBB$SSSS
minRows число нет нет нет Минимальное число строк на странице
maxRows число нет нет нет Максимальное число строк на странице
selectedColumnName строка только чтение нет да Название активной колонки (которое отображается в шапке грида)
selectedColumnNameWithBands строка только чтение нет да Для сложных шапок - последовательность названий колонок, в которые входит активная, начиная сверху, через запятую.

Пример: Верхний бенд, средний бенд, название колонки.

selectedColumnBand(xx) строка только чтение нет да Возвращает функцию для расчета сложных шапок - названий бендов. Для получения последовательности бендов заданного уровня, необходима запись типа ${eval(windowName.gridName.selectedColumnBand,xx)}, где windowName - имя формы, gridName - имя грида, xx - номер уровня (считается от колонки вверх).
exportCaption строка нет да нет Текст в шапке листа Excel при экспорте.

Обработчики событий

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
ondrilldown действие (action/actiongroup) нет да нет Название действия, выполняемое при двойном щелчке на строк. Если столбцу грида, в ячейке которого был выполнен двойной щелчток мышью также содержит атрибут ondrilldown, то выполняется действие, назначенное столбцу.
onrowselect действие (action/actiongroup) нет да нет Название действия, выполняемое при смене активной строки грида.

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

onrowclick действие (action/actiongroup) нет да нет Название действия, выполняемое при нажатии на строку грида.

Группа колонок грида (colgroup)

Объединяет несколько подряд идущих колонок в одну визуальную группу.

Группа колонок 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
caption строка да да нет Название группы колонок

Колонка (column)

Описывает визуальное представление колонки грида и связывает колонку с курсором данных.

Колонка 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
caption строка да да нет Название колонки
sourcefield строка да нет нет Название отображаемой колонки курсора
displayformat перечислимый нет нет Формат отображения данных:
  • currency - отображение денег
  • number - отображение произвольного числа
  • date - дата
  • datetime -дата со временем
  • check - булеан в виде checkbox
  • string - строка (в разработке)
  • icon - иконка по идентификатору
  • checkicon - кликабельная иконка - при клике на нее значение поля меняется на +1 и иконка меняется на следующую из списка icons (если список исчерпан, то с начала списка и значение поля равно 0)
summary строка нет нет Формула для расчета итогов и подытогов колонки. Формулы 1-го рода - агрегирующие функции:
  • sum() - просуммировать значения текущей колонки. Применяется для типов данных: число (деньги)
  • min() - минимальное значение текущей колонки. Применяется для типов данных: число (деньги), дата
  • max() - максимальное значение текущей колонки. Применяется для типов данных: число (деньги), дата
  • avg() - среднее значение значений текущей колонки. Применяется для типов данных: число (деньги)
  • count() - количество строк в текущей колонке. Применяется для всех типов данных
  • countdistinct() - количество строк с уникальными значениями в текущей колонке. Применяется для всех типов данных
  • countnotempty() - количество строк с не пустыми значениями в текущей колонке. Применяется для всех типов данных

Формулы 2-го рода - агрегирующие функции по произвольным колонкам курсора:

  • sum(название колонки курсора) - просуммировать значения заданной колонки (суммирует значения только из заданных в гриде колонок)
  • min(название колонки курсора) - минимальное значение заданной колонки
  • max(название колонки курсора) - максимальное значение заданной колонки
  • avg(название колонки курсора) - среднее значение значений заданной колонки
  • count(название колонки курсора) - количество строк в заданной колонке
  • countdistinct(название колонки курсора) - количество строк с уникальными значениями в заданной колонке
  • countnotempty() - количество строк с не пустыми значениями в текущей колонке. Применяется для всех типов данных
  • group(название колонки курсора) - используется для условия подсчёта подытогов. Подытог рассчитывается только для данных, группируемых по колонке, указанной в group.

Формулы 3-го рода - формулы первого и второго рода и операторы для $-выражений. Например:

sum(название колонки курсора) + min() - сумма значений заданной колонки плюс минимальное значение в текущей колонке.

XM-формула

Есть возможность так же использовать xm-формулы, они обязательно должны быть обернуть в $ выражение - ${Текст формулы}

summaryformat строка нет нет Формат отображения данных итогов и подытогов колонки:
  • currency - отображение денег
  • number - отображение произвольного числа

Примечание: если в summary колонки находится формула 2-го или 3-го рода (см. summary), то необходимо определить формат итога

для значения формулы с помощью summaryformat.

headerstyle стиль да нет Стиль шапки колонки. Фактически используется только для задания ширины колонки.
contentstyle стиль да нет Стиль данных по колонке. Никак не влияет на внешний вид колонки. Добавлен на случай будущего расширения стилей дополнительными атрибутами.
descriptionfunc строка нет нет Наименование апп-функции, для получения описания картинки
visible строка нет 1|true да нет Видимость столбца. Возможные значения "1"|"true" или "0"|"false" (независимы от регистра).

Примечание: если при обращении к этому атрибуту его значение в строковом виде равно "1" или "true", то оно принимается за true, в случае любых других значений включая пустую строку или NULL оно принимается за false.

widthinchars число нет нет нет Начальная ширина колонки в размере равном указанному количеству латинских символов "a"
icons строка нет нет нет Список идентификаторов системных иконок которые последовательно будут отображаться в поле типа checkicon при изменении значения поля. (Первая иконка списка отображается при значении поля 0, вторая 1 итд)
cellstyle строка нет нет нет нет Название колонки, содержащей информацию о раскраске ячейки в колонке таблицы.

Значением в поле колонки стиля должна быть строка, содержащая json с настройками стилизации ячейки в строке.

Поддерживаются следующие параметры стилизации:

bgcolor - цвет заливки ячейки

textcolor - цвет текста ячейки

textalign - кастомное выравнивание содержимого ячейки по горизонтали (  left, center, right )

fractionDigits - количество знаков после запятой для ячеек с типом "number" - (параметр числовой - то есть "fractionDigits": 2 , а не "2")

bold (true/false) - жирный шрифт

italic (true/false) - курсив

underline (true/false) - подчеркивание

strikethrough (true/false) - перечеркивание

Например '{"bgcolor": "#00ff00", "textcolor": "#ffff00", "underline": true, "strikethrough": false}'

Важно, чтобы значением свойств bold, italic, underline и strikethrough было именно булево значение true или false, а не строки "true" или "false"

headerLineBreak булеан false нет нет Признак переноса строки в заголовке колонки.
headerTextAlign строка left нет нет Выравнивание текста в заголовке колонки:
  • left - по левому краю;
  • center - по центру;
  • right - по правому краю;
  • justify - по ширине.
withDischarges булеан нет false нет нет Разделение на разряды. Учитывается для колонок с форматом отображения число или деньги.

Обработчики событий

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
ondrilldown действие (action/actiongroup) да нет Название действия при проваливании в ячейку. Информацию о ячейке можно получить из атрибутов selectedCell, selectedSourceField, selectedRow
ondrillsummary действие (action/actiongroup) да нет Название действия при проваливании в строку итогов. Информацию о группировки можно получить из атрибута selectedGroup
onchangevalue действие (action/actiongroup) да нет Для displayformat "check" и "checkicon" - определяет действие которое будет вызываться при смене значения в ячейке (клике на чекбокс/иконку).

Вызывается после установки нового значения в гриде.

Форматирование данных

Тип данных/displayformat Выравнивание Способ форматирования
Число/number справа
  • В целой части используются разделители тысячных в виде пробелов
  • Дробная часть отображается только при ее наличии, т.е. она не равна 0
  • Дробная часть может иметь длину не более 6 знаков
  • Если дробная часть имеет больше 6 знаков, она округляется по правилам математики
  • Дробная часть не должная содержать в качестве последних символов нули
Дата/date по центру Формат отображения: dd.mm.yyyy hh24:mi:ss.

Время отображается только, если оно не равно 00:00:00

/datetime по центру Формат отображения: dd.mm.yyyy hh24:mi:ss
/currency справа
  • В целой части используются разделители тысячных в виде пробелов
  • Дробная часть всегда отображается и имеет два знача после запятой. Например, для целый чисел дробная часть равна "00"
Строка/string (в разработке) слева Данные, отличные от строки, форматируются в строку согласно правилам "Способ форматирования" для каждого типа данных. Исключение для чисел, при форматировании в строку для них не используются разделители тысячных

Числовое поле (numedit)

Компонент для ввода числовых данных.

Числовое поле 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
displayformat перечислимый нет number нет нет Формат отображения данных:
  • currency - отображение денег
  • number - отображение произвольного числа
totalDigits число нет нет нет Допустимая длина числа

Мин. - 1 (oracle), макс. - 38 (oracle)

Если значение не задано, оно считается равным максимальному

fractionDigits число нет нет нет Допустимая длина дробной части

Мин. - 1 (oracle), макс. - 10 (oracle)

Если значение не задано, оно считается равным максимальному

withDischarges булеан нет true нет нет Разделить число на разряды
incDecButtonsNeeded булеан нет false нет нет Управляет отображением кнопок увеличения\уменьшения значения на 1.

Текстовое поле ввода (edit)

Компонент для ввода текстовых данных.

Текстовое поле 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
password булеан нет false нет да При истинном значении текст отображается в зашифрованном виде
maxlength число нет 0 нет да Наибольшая возможная длина текста. Если введено число символов больше, чем заданная максимальная длина, то текст обрезается до размера, указанного в maxlength.

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

immediateChange булеан нет false нет нет Требование XM-документу реагировать на каждое изменение соджержимого строки ввода и немедленно производить соответствующие расчеты.
mask строка нет нет нет Маска ввода. Содержит шаблон, по которому будет форматировано значение поля.

Шаблоны бывают двух видов - маска и обычное регулярное выражение.

1) Шаблон типа "Маска":

0 - любое число

a (латинская) - любая буква

* - любой символ

[] - все, что внутри, к вводу необязательно

{} -все, что внутри, останется в value у поля. Используется для тех символов, которые уже являются частью маски изначально - например, знаки пунктуации. Так, данные, введенные по маске 000-000 не будут в итоге содержать дефиса (он будет добавляться только в саму маску поля, без передачи в БД\хранилище при сохранении), а по 000{-}000 - будут.

Если какой-то из вышеперечисленных символов нужно вставить буквально, его надо экранировать обратным слешем - \ (то есть \0 позволит только ноль вставить).


Также существует возможность вставить в шаблон типа "Маска" регулярное выражение с квантификатором. Само регулярное выражение должно записываться в круглых скобках, например:

([A-Z])

Такая запись будет соответствовать одному символу. Если символов несколько, то добавляется квантификатор в круглых скобках, следующих за скобками с RegExp:

([A-Z])(4) - нужно ввести строго 4 символа.

([A-Z])(1,4) - минимум один, максимум 4.

Квантификатор не может быть открытый, т.к. шаблон типа "Маска" подразумевает точное указание количества символов.

Если необходимо сделать круглую скобку частью маски, то ее нужно экранировать обратным слешем - \. Пример:

\(([A-Z])(1, 4)\) - ввод пользователя будет обрамлен круглыми скобками.

2) Шаблон типа "Регулярное выражение":

RegExp нужно вводить в поле как обычное регулярное выражение, но оно должно быть таким, чтобы поддерживался промежуточный ввод. Например:

^\d{1,2}\/\d{1,2}\/\d{4}$ - не поддерживается, т.к. предполагает одновременное наличие минимум 6 символов.

^\d{0,2}\/?\d{0,2}\/?\d{0,4}$ - поддерживается, т.к. допускает промежуточный ввод.

^\d{1,2}\/?\d{0,2}\/?\d{0,4}$ - тоже поддерживается, т.к. первым символом будет введено число - и строка будет соответствовать RegExp.

Для правильной интерпретации следует добавлять в начало выражения - ^, а в конец - $.


В целом, шаблон типа "Маска" следует использовать для более строгих форматов, а RegExp - для более открытых (только цифры, буквы и т.п.)

maskType строка нет pattern нет нет Тип маски ввода. Содержит строку, по которой определяется тип маски - шаблон библиотеки IMask или RegExp.

Выбор даты (datepicker)

Компонент ввода даты. При помощи атрибутов minvalue, maxvalue позволяет задавать период дат.

Атрибуты minvalue, maxvalue, value могут принимать значение даты в виде строки (без формулы) в формате: DD.MM.YYYY или DD.MM.YYYY HH24:MI:SS

Выбор даты 2.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступен из скрипта Описание
kind перечислимый нет date нет да Формат даты:
  • date - выбор даты
  • datetime- выбор даты со временем
  • yearmonth - выбор года и месяца (доступно в iOS)
  • datetimeWithoutSeconds - выбор даты со временем без секунд
minvalue число нет да да Минимально возможная дата доступная для выбора
maxvalue число нет да да Максимально возможная дата для выбора

Выбор времени (timeedit)

Компонент ввода времени в минутах. Минимальное значение - 0, максимальное значение - 999 * 60 + 59 = 59999.

Выбор времени 2.png

Выбор цвета

Выпадающий список (combobox)

Компонент для выбора единственного значения из выпадающего списка.

Выпадающий список.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
keytype строка нет number нет нет Тип ключевого значения.

Возможные значения: "string", "number".

selectedText строка только для чтения да Отображаемое текстовое значение
withUserItems булеан нет false нет нет Добавлять значения вручную. Позволяет добавлять в список значения путем ввода в поле поиска
rowstyle строка нет - - - Название колонки со стилями для раскрашивание элементов в списке
selectedRowStyle строка нет - - - Название колонки со стилями для раскрашивания активного элемента в списке

Выпадающий список с галками (checkcombobox)

Компонент для выбора множественных значений из выпадающего списка.

Выпадающий список с галками.png

Свойства

Значения выпадающего списка описываются одним из способов:

  • вложенным тегом item, атрибуты которого key/value содержат соответственно ключ и значение списка
  • указанием источника данных в атрибуте source

Задание выбранных значений осуществляется одним из способов:

  • Установкой атрибута selected для вложенного тега item
  • Перечислением через запятую всех выбранных ключей в теле selected для checkcombobox
Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
selected строка нет да да Перечисление через запятую выбранных ключей
selectedLabels строка нет да Перечисление через запятую с пробелом текстовых наименований выбранных ключей
sourceFillings строка нет да да Строка описывающая обогащение полей курсора указанного в свойстве sourceExt. Обогащение происходит данными из курсора указанного в свойстве source.

Запись происходит в сл. формате: Поле_1_курсор_1: Поле_1_курсор_2 ; ... ; Поле_2_Куроср_1: Поле_2_курсор_2.

Здесь Поле_1_курсор_1, ..., Поле_2_Куроср_1 наименование полей курсора из свойства source, а поля Поле_1_курсор_2, ... , Поле_2_курсор_2 - поля курсора из свойства sourceExt.

Если наименования соответствующих полей совпадают, то есть Поле_1_курсор_1 = Поле_1_курсор_2, то допустпима короткая запись: Поле_1_курсор_1 ; ... ; Поле_2_Куроср_1.

Выбор из справочника (quicksearch)

Компонент поиска данных.

Строка поиска aka QuickSearch предназначена для быстрого и наглядного поиска и выбора пользователем требуемой записи в наборе данных. QuickSearch представляет собой строку ввода, которая используется для отображения текстового описания найденной записи и ввода подстроки для поиска по текстовому полю набора данных. QuickSearch в определенных случаях выводит на экран модальное диалоговое окно, отображающее полностью или частично набор данных и позволяющее выбрать нужную запись. Чтобы начать поиск в наборе данных пользователь вводит подстроку для поиска по текстовому полю и нажимает клавишу <Enter>. Поиск ведется независимо от регистра символов введенной подстроки. В случае, если найден только одна запись, подходящая по условию вхождения подстроки, она становится выбранной, и полное значение текстового поля набора данных отображается в строке QuickSearch. Если подходящая запись не найдена или таких записей найдено более одной, открывается диалоговое окно, отображающее набор данных отфильтрованный по заданному критерию (вхождение подстроки в значение текстового поля). В окне пользователь выбирает нужную запись или задает новый критерий поиска, вводя символы в строку ввода вверху окна. Для начала поиска записи в диалоговом окне пользователь нажимает клавишу <Enter> или кнопку "Найти".

Выбор из справочника (компонент).png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
onsearch действие нет да да Название действия (action), осуществляющее поиск по базе. Действие может быть только единичным и содержать поля поиска по идентификатору (selected) и по значению (selectedText)
selectedText
searchText
строка только чтение Строка поиска
sourcekey строка нет нет нет Название колонки курсора, содержащей ключевое значение, и параметра app-функции, в котором передается ключевое значение при поиске в режиме QSMODE=ID.
sourcevalue строка нет нет нет Название колонки курсора, содержащей значение текста, и параметра app-функции, в котором передается текстовое значение для поиска в режиме QSMODE=NAME.

Не рекомендуется использовать колонки со значениями атрибута displayformat равными check и icon ввиду невозможности их представления в текстовом виде в поле ввода.

minChars число нет 0 нет да Наименьшее количество символов, которое требуется ввести в строке для начала поиска в базе данных.

Многострочное поле (memo)

Компонент для ввода текстовых данных.

Многострочное поле.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступен из скрипта Описание
maxlength число нет 0 нет да Наибольшая возможная длина текста. Если введено число символов больше, чем заданная максимальная длина, то текст обрезается до размера, указанного в maxlength.

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

immediateChange булеан нет false нет нет Требование XM-документу реагировать на каждое изменение содержимого строки ввода и немедленно производить соответствующие расчеты.
lines число нет нет да Количество строк для компонента. Получается из стиля.

Редактирование HTML

Компонент для редактирования HTML-страниц.

Наследует все атрибуты от <текстовое поле ввода (memo)> .

Редактирование HTML.png

Галочка (Checkbox)

Компонент для выбора, позволяющий пользователю управлять параметром с двумя состояниями — ☑ включено и ☐ выключено.

Галочка.png

График (chart)

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

График.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
source строка да нет да Курсор в котором отображаемые данные
kind перечислимый нет columnDiagram нет да Определяет тип графика по умолчанию:
  • columnDiagram - гистограмма
  • barDiagram - панельная гистограмма
  • lineDiagram - график
  • areaDiagram - диаграмма участка
  • pieDiagram - круговая диаграмма
kindSelector булеан нет true нет да Определяет возможность пользователем выбирать тип графика:
  • true - есть возможность выбора
  • false - нет возможности выбора
yCaption строка нет да нет Наименование оси Y
legendPosition перечислимый нет bottom нет нет Определяет место отображения легенды графика
  • top - сверху
  • bottom - снизу
  • left - слева
  • right - справа
  • none - не отображать
chartColors строка нет нет нет Строка - список цветов разделенных запятой
dataLabel перечислимый нет 'none' нет нет Отображение метки около точки (столбца, сектора) графика
  • name - отображать только имя
  • namevalue - имя и значение
  • value - только значение
  • none - не отображать ничего
dataLabelBgColor строка нет нет нет Цвет фона метки
dataLabelColor строка нет нет нет Цвет текста метки
dataValueFormat строка нет нет нет Формат значения выводимого в метке

Значение графика (value)

Характеризует величину (показатель) отображаемую в графике.

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Описание
sourcefield строка да Название отображаемой колонки курсора
groupSummaryKind перечислимый да sum() Определяет аналитическую функцию используемую при группировке данных:
  • sum() - суммарное значение
  • min() - минимальное значение
  • max() - максимальное значение
  • count() - общее количество
  • avg() - среднее значение
caption строка да Название величины. Будет отображаться в легенде.

Группировка графика (group)

Характеризует величину (показатель) по которому выполняется группировка данных. Графически отображаются в панели "Уровни данных". Панель отображается, если количество группировок более 1.

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Описание
sourcefield строка да Название колонки курсора по значениям которой выполняется группировка
caption строка да Название величины. Будет отображаться в панели "Уровни данных"
p-step строка нет Шаг для отображения данных на графике (для чисел и дат )

Значения для дат ( 'day', 'month', 'year', 'hour' )

Значения для чисел ( интервал в виде числа )

Если указан шаг то данные отображаем во всем интервале, от минимального значения к максимальному, с данным шагом.

p-from строка нет Конечное значение для интервала данных

Дата ( Пример - '10.07.2014' )

Число ( пример - '120' )

Формула (пример - '${VAR.PARAM}')

p-to строка нет Начальное значение для интервала данных

Дата ( Пример - '10.02.2014' )

Число ( пример - '12' )

Формула (пример - '${VAR.PARAM}')

Картинка (Image)

Картинка.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступен из скрипта Описание
stretch строка нет 0|false нет да Растягивать картинку до размера визуального компонента.

Возможные значения "1"|"true" или "0"|"false" (независимы от регистра).

Примечание: если при обращении к этому атрибуту его значение в строковом виде равно "1" или "true", то оно принимается за true, в случае любых других значений включая пустую строку или NULL оно принимается за false.

iconname строка нет да да Наименование иконки из репозитория для отображения на кнопке
source строка нет да Указывается формула на поле датасета содержащее BLOB с изображением.  (ITMKERNEL-3917) Если заполнено source, то iconname игнорируется

Просмотр HTML (htmlviewer)

Компонент для просмотра html разметки.

Просмотр html .png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
value любой тип нет пусто да да Значение поля ввода

Сравнение текстов (comparison)

Предназначен для визуального сравнения двух передаваемых текстов.

Сравнение текстов.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
showAll булеан нет нет да Отображать текст полностью
rightSide строка да да да Текст правой стороны
leftSide строка да да да Текст левой стороны

Карта (mapView)

Отображает интерактивную карту с возможностью размещать на ней точки, линии (в том числе состоящие из множества отрезков) и многоугольники.

Для размещённых объектов доступна настройка внешнего вида и обработчиков событий перетаскивания и нажатия.

Карта.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
source строка да нет нет Источник данных (датасет) для отображения объектов на карте
fit булеан нет нет нет Автоматически изменять позицию и масштаб карты для оптимального отображения всех объектов. При установке атрибута fit=true атрибуты latitude, longitude и zoom игнорируются.
latitude число нет нет нет Начальное положение центра карты по широте. Атрибут игнорируется, если fit=true.
longitude число нет нет нет Начальное положение центра карты по долготе. Атрибут игнорируется, если fit=true.
zoom число нет нет нет Начальное значение масштаба карты. Атрибут игнорируется, если fit=true.

Принимаемые значения: целые и дробные числа от 0 (мир) до 23 (улица/дом).

allowMove булеан нет нет нет Разрешать ли пользователю перемещение по карте
allowZoom булеан нет нет нет Разрешать ли пользователю изменять масштаб карты
dragAction строка нет нет нет Название действия, запускаемого сразу после перетаскивания пользователем объекта на карте.

Доступ к свойствам перемещённого объекта осуществляется через обращение к свойствам <имя компонента карты>.selectedObject.<id|name|object_class|latitude|longitude>.

Если не указано, перетаскивание объектов на карте недоступно.

selectedObject.id целое число только чтение нет да Идентификатор объекта
selectedObject.name строка только чтение нет да Отображаемое наименование объекта
selectedObject.object_class строка только чтение нет да Тип объекта — point, line или polygon
selectedObject.latitude число только чтение нет да Координаты (широта)
selectedObject.longitude число только чтение нет да Координаты (долгота)

Описание формата датасета

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

Название атрибута строки датасета Тип данных Описание Пример
ID целое число Идентификатор объекта
OBJECT_CLASS строка Тип объекта:
  • point — точка
  • line — отрезок
  • polygon — многоугольник
ACTIONCLASS строка Название действия, выполняемое при нажатии на объект
NAME строка Отображаемое наименование объекта
POINTS строка Координаты объекта.

Двумерный массив, содержащий массив(ы) пар координат (долгота, широта).

  • Точка: [[87.18613, 53.99818]]
  • Прямая линия (2 точки): [[87.18613,53.99818], [87.18613,53.99818]]
  • Ломаная линия (от 3 точек): [[87.18613,53.99818], [87.18613,53.99818], [87.19036,53.99834], [87.19947,53.99891]]
  • Многоугольник (если начальная и конечная точки не совпадают, они будут автоматически соединены ещё одним отрезком): [[87.7959426611866, 49.26152638335681], [98.9204449286504, 52.05763105135641], [116.44619710420787, 49.98618250048632], [113.77383063772218, 44.77401901529287], [96.4345226342451, 42.7089399393454], [89.59823632463048, 47.821523331564144]]
STYLE строка (JSON) JSON, содержащий набор свойств, описывающих внешний вид объекта. Содержимое зависит от типа объекта — некоторые свойства у точек, отрезков и полигонов различаются, некоторые совпадают.
  • captionVisibilityLevel (число 0/1/2) Видимость отображаемого наименования объекта. 0 — не отображать, 1 — отображать при наведении мыши, 2 — отображать всегда. Применимо к точкам и полигонам.
  • color (цвет в hex-формате в строковом представлении) Для point и polygon — цвет границы (border) Для line — цвет отрезка
  • backgroundColor (такой же формат, как у color) Цвет заливки
  • opacity (дробное число в диапазоне с 0 по 1) Прозрачность объекта
  • iconUrl (строка) Относительный или абсолютный url до файла изображения, которое будет использовано в качестве иконки маркера точки или размещено в центре полигона.
  • thickness (целое число) Толщина отрезка в пикселах

Итого, использование свойств по типам объектов:

  • point:
    • captionVisibilityLevel
    • color
    • backgroundColor
    • opacity
    • iconUrl
  • line:
    • color
    • thickness
    • opacity
  • polygon:
    • captionVisibilityLevel
    • color
    • backgroundColor
    • opacity
    • iconUrl
  • Точка со всегда отображаемым наименованием, заданными цветами фона, обводки, частичной прозрачностью и иконкой: {"captionVisibilityLevel": 2, "color": "#1c0f80", "backgroundColor": "#fdf877", "opacity":0.75, "iconUrl":"http://10.144.18.109:8083/extra-media/char1.png"}

Дерево группировки грида (gridGroupingTree)

Компонент для отображения группировки грида в виде отдельного дерева.

Дерево группировки грида.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
gridname
строка нет нет нет Имя грида, к которому привязано дерево в формате Window.gridName
groupby строка нет да нет Колонки для группировки. Cписок имен колонок по которым будет сформировано дерево фильтра, через запятую
showExpandCollapseButtons логический нет false нет нет Кнопки свернуть всё / развернуть всё

Дерево

Компонент для отображения данных датасета в виде дерева.

Дерево.png

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Может содержать скрипт Доступ из скрипта Описание
sourceparent строка нет нет нет Колонка, содержащая id родительского узла
onrowselect строка нет да нет Действие при выборе строки
sourceicon строка нет нет нет Колонка с иконкой. Имя колонки грида с id иконок
sourceloadondemand строка нет нет нет Колонка для подзагрузки. Имя колонки, содержащей флаг необходимости подгрузить строки

Допустимые значения в датасете:

0 - без подзагрузки

1 - Полная загрузка

2 - Загрузка с фильтрацией (пользователю показывается окно с текстовым вводом)

onsearch строка нет нет нет Действие для подзагрузки (единичное действие, возвращающее датасет)

К параметрам заданным в дизайнере будет добавлено еще 2

ID - содержит id ноды, для которой загружаем данные

TEXT - текст введенный пользователем для фильтрации

showExpandCollapseButtons логический нет false нет нет Кнопки свернуть всё / развернуть всё

Cтрока поиска (searchBox)

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

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Описание
caseSensitive булеан нет false Регистрозависимый поиск
showCaseSensitiveButton булеан нет false Отображать кнопку регистрозависимого поиска
useRegexp булеан нет false Использовать регулярное выражение
showUseRegexpButton булеан нет false Отображать кнопку для регулярного выражения
showClearSearchFieldButton булеан нет true Отображать кнопку очистки строки поиска

Диаграмма Ганта

Предназначен для отображения специализированных данных (план, график, расписание, управление проектами) в виде диаграммы Ганта, являющейся подвидом столбчатых диаграмм (гистограмм).

Для работы необходимо предоставить компоненту два специально подготовленных набора данных (датасета). Первый формирует табличную часть (слева), второй — диаграмму (справа).

Диаграмма Ганта.png

Свойства таблицы и графика задаются в дочерних тегах:

1. График диаграммы (chart)

Настраивает отображение графика в диаграмме Ганта

Свойства

Название атрибута Тип данных Обязательность Может содержать скрипт Значение по умолчанию Описание
source строка да Название курсора из action, содержащей данные для отображения на диаграмме
fk строка да Название колонки курсора, содержащее первичный ключ

Тип данных колонки должен быть число

timeStart строка да Начальная позиция отрезка, размещаемого на временной диаграмме

Тип данных колонки должен быть дата

timeEnd строка да Конечная позиция отрезка

Тип данных колонки должен быть дата

label строка да Текст, отображаемый на элементе диаграммы

Тип данных колонки должен быть строка

zoom число нет да 15 Масштаб отображения диаграммы. Число с плавающей точкой в диапазоне с 10 (максимально подробный масштаб) по 22 (самый сжатый вид).

2. Таблица диаграммы (table)

Используется для настройки табличной части диаграммы Ганта. Содержит вложенные теги для описания колонок таблицы.

Свойства

Название атрибута Тип данных Обязательность Значение по умолчанию Описание
source строка да Название курсора из action, содержащей данные для отображения в таблице
id строка да Название колонки курсора, содержащее первичный ключ

Тип данных колонки должен быть число