<col>
Структура: список
Один столбец списка
Может содержать 8
| Тег | Описание | Включений здесь |
|---|---|---|
| Поля ввода | ||
<opt> |
Условное оформление значения столбца/поля (по key + comparison) | 1256 |
<choice> |
Вариант выпадающего списка (статичный или динамический через SQL/array) | 1 |
| Структура: список | ||
<subcol> |
Подколонка (для type="array" в col, отображается в одной ячейке) | 233 |
<col> не везде |
Один столбец списка | |
| Текст/заголовки | ||
<text> |
Текстовый блок: либо контейнер заголовков (внутри list/form), либо самостоятельный текст в форме | 10 |
| Структура: БД | ||
<key> |
Описание первичного ключа таблицы (<key name="id" type="integer"/>) или ключа SQL-выборки в списке | 5 |
| Оформление (HTML) | ||
<html> |
HTML-блок: alert-сообщение, информационный блок или произвольная разметка в форме | 1 |
| SQL/обработка | ||
<sqlrepr> не везде |
SQL-выражение для расчёта/отображения значения (может быть и атрибутом, и вложенным тегом для… | |
Может встречаться внутри 3
| Тег | Описание | Включений здесь |
|---|---|---|
| Структура: список | ||
<cols> |
Контейнер столбцов списка (с атрибутами defaultsort, *-flag и пр.) | 4803 |
<list> |
Можно использовать <list> не только как embedded во вкладке, но и как полную замену списка модуля… |
192 |
<col> не везде |
Один столбец списка | |
Атрибуты 77
| Атрибут | Описание | Значения |
|---|---|---|
| Отображение | ||
caption |
Заголовок столбца, видимый пользователю |
_other_ПримечаниеНаименованиеПодразделениеОрганизация_qscript_ |
short |
Короткий вариант заголовка для узких колонок |
_other__qscript__empty_№Организация<i class='icon-eye-open'></i> |
hint |
Подсказка (tooltip) при наведении на заголовок столбца |
_other_Фамилия, имя, отчетство сотрудн…_qscript_ФайлыНаименование объекта размещения…Данное примечание будет подстав… |
allowhtml |
Разрешить HTML-разметку в значениях столбца (1=рендер, 0=экранирование) |
10 |
| Идентификация | ||
field |
Имя SQL-поля (или алиаса), значение которого выводится в столбце |
_other_commenttitleiddepnamecompany_name |
name |
Имя столбца — используется когда колонка не привязана к field напрямую (виртуальные/вычисляемые столбцы) |
_other_company_namea_project_groupa_project_divisiontitlefio |
| Источник данных (SQL) | ||
sqlrepr |
SQL-выражение, по которому вычисляется значение столбца (используется для JOIN-полей и кросс-табличных вычислений) |
_other_departments.shortpathcontragenty.fullnamepersons.fullnamecontragenty.shortnameNVOS_accounting_objects.object_… |
sqlrepr-sort |
SQL-выражение для сортировки данного столбца (если отличается от sqlrepr) |
_other_type_strstazh_harmful_numnew_risk_classifiers_category.t…new_risk_classifiers_category.v…process_title |
sqlrepr-search |
SQL-выражение для поиска по столбцу (если отличается от sqlrepr) |
_other_typestatusnew_risk_classifiers_category_c…admissions_constructor_dic_sour…admissions_constructor_dic_dang… |
searchrepr |
SQL-выражение для расширенного поиска (используется при поиске по подстроке) |
CONCAT(cr_registers.number,'/',…cr_risk_areas.area_titleCASE audit_control_groups.statu…CASE audit_control_groups.statu…audit_control_groups_status.rem…contragenty.shortname |
| Стиль | ||
align |
Горизонтальное выравнивание содержимого ячеек: center / left / right |
centerrightleft |
nowrap |
Запретить перенос текста в ячейке (1=в одну строку, 0=перенос разрешён) |
10 |
cell-hint |
Подсказка (tooltip) для ячейки. Поддерживает {{row.<поле>}} для динамики |
_qscript_В скобках указано фактическое с…Нет результатов для данного тес…ГодНажмите, чтобы открыть список с…Нажмите, чтобы открыть список а… |
cell-class |
CSS-класс ячейки. Можно задавать динамически через {{row.<поле>}} |
_qscript_nvos-table-separatornvos-table-before-separator |
cell-color |
Индекс цвета фона/текста ячейки (соответствует <color index="…">). Поддерживает {{row.…}} |
_qscript_ |
bold |
Выделять значения столбца жирным (1=да) |
_qscript_1 |
class |
CSS-класс, применяемый ко всем ячейкам столбца (text9 / text85 / breakword / bleft / bright / narrow) |
text9text85breakwordbleftbrightnarrow |
color |
Индекс цвета текста значений (соответствует <color index="…">). Поддерживает {{row.…}} |
_qscript_-12519 |
color-flag |
Имя SQL-поля строки, в котором лежит индекс цвета (динамическая раскраска по {{row.<имя>}}) |
acolorst_colorcapactiy_color_flagacontrolcolorflagfinishrate_color |
caption-icon |
Имя иконки рядом с заголовком столбца (Bootstrap glyphicon без префикса "icon-") |
folder-openparentsth-listcogfilemessage-new |
icon-false |
Имя иконки для значения 0/false (для type="bool") |
eye-close_empty_linkremove |
icon-true |
Имя иконки для значения 1/true (для type="bool") |
eye-openparentsmoneybookmarkcloudtint |
italic |
Курсивное начертание значений столбца (1=да) |
1 |
inline |
Подколонки type="array" размещаются на одной строке, без отдельных <td> (1=да) |
1 |
icon |
Имя иконки Bootstrap glyphicon, отображаемой в ячейке (для type="checkbox" с булевыми значениями) |
crownnotes-2linkpicture_id |
| События | ||
type |
Тип отображаемого значения int / date / string / text / textblock / bool / array / double / float / time / money / lastchanged |
intdatestringtextbooltextblock |
| (без группы) | ||
group |
Имя группы столбцов — объединяет несколько колонок под общим заголовком второго уровня |
_other_МесяцМестоЗагрязняющее веществоМесяцаПодразделение |
link-form-itab не везде |
_qscript_2 |
|
cell-hint-type не везде |
_qscript_ |
|
text-in-slider не везде |
_qscript_ |
|
shortname не везде |
Вид средства защитыЕдиница измеренияКласс средства защиты |
|
ssortable не везде |
0 |
|
_link-entity не везде |
departments_qscript_inspections/inspections_documen… |
|
text |
Альтернативный текст ячейки (часто {{row.…}}), отображаемый вместо значения поля |
ДеталиРезультаты1_qscript_ПройтиПройти тест |
empty не везде |
—не заданВсе организацииВсе подразделенияНе заданаВся организация |
|
length не везде |
3 |
|
popup не везде |
fieldfactstatusflagperson |
|
_type → type |
Закомментированная версия |
floatint |
lign → align |
Опечатка в коде: должно быть |
center |
link-loading-text не везде |
<i class='icon-send'></i>Выполняю…Сдаю...… |
|
seartchable не везде |
0 |
|
_link-entity-id не везде |
_qscript_ |
|
unsigned не везде |
1 |
|
link-query-data не везде |
_qscript_ |
|
link-query-onerror не везде |
alert('Произошла ошибка. Обрати… |
|
link-query-onsuccess не везде |
fnUpdateAllDataTables(); |
|
link-query-url не везде |
/set_rm_persons_informed/eco_report_ready |
|
| Сортировка/поиск | ||
sortable |
Разрешить сортировку по столбцу (1) или нет (0) |
01 |
searchable |
Разрешить поиск/фильтрацию по столбцу (1) или нет (0) |
01 |
sort-direction |
Направление сортировки по умолчанию: asc / desc |
desc |
| Связи/навигация | ||
link-entity |
Путь к Qform-сущности, на которую ведёт ссылка по клику в ячейке |
_qscript_bbs/bbs_controlbbs/bbs_mx_result_formbbs/bbs_department_personfiresystems/fire_objects_actionsecology/ecorisks/ecorisks_proje… |
link-entity-id |
ID записи, к которой ведёт ссылка (по умолчанию подставляется row.id) |
_qscript_10 |
link-form-edit |
Открывать связанную сущность в режиме редактирования (1) или просмотра (0) |
01_qscript_ |
link-form-externvars |
Внешние переменные key:value через запятую, передаваемые в открываемую по ссылке форму |
_qscript_hideaddmore:1status_pm: 40rel:1def_filter_month:1def_filter_month:2 |
link |
URL или JS-выражение для ссылки с ячейки (например, javascript:QForm.fnOpenForm(…)) |
_qscript_javascript:QForm.fnOpen_empty_ |
link-form-tab |
Имя вкладки (tab), на которую переключаться при открытии связанной формы |
tabGeneralfire_trainingmeroprfilestasksplan_meropr_tab |
link-flag |
Имя SQL-поля-флага: ссылка работает только если значение поля = 1 |
use_pidpidshow_linkcnt_meroprboss_idcnt_eff_not_completed |
link-target |
target атрибут ссылки (_blank — открывать в новой вкладке) |
_blank |
linktarget → link-target |
Опечатка/устаревшая форма |
_blank_qscript_ |
link-control |
Тип контрола, на который ведёт ссылка с ячейки (person — открыть карточку сотрудника по link-pid-field) |
personqform |
link-pid-field |
Имя SQL-поля с ID связанной сущности (используется вместе с link-control) |
pidsupervisor_pidauditor_pid |
| Расположение | ||
postfix |
Текст, добавляемый после значения ячейки (например, " %", " млн.руб.") |
_qscript_ млн.руб.% % т. т. |
virtual |
Виртуальный столбец, не привязан к полю в БД (значение только из sqlrepr или вычисляется внешне) |
1_qscript_ |
| Размеры | ||
width |
Ширина столбца в пикселях |
100200501508060 |
maxlength |
Максимальная длина текста в ячейке (длиннее — обрезается с многоточием) |
1002005015070300 |
maxwidth |
Максимальная ширина столбца в пикселях |
2050101508042 |
minwidth |
Минимальная ширина столбца в пикселях |
9030050010028150 |
min-width |
Минимальная ширина столбца (альтернативная форма minwidth через дефис) |
300 |
| Числовые форматы | ||
zero |
Текст-заглушка вместо нулевого/пустого значения (часто "-" или "—") |
-0 - _empty_0.00— |
decimals |
Количество знаков после запятой для числовых типов (double/float) |
1211365 |
decimals-autoround |
Авто-округление до N значащих цифр (вместо фиксированного числа знаков после запятой) |
13112 |
null |
Текст вместо NULL-значения (например, "-") |
-_empty_–0Не повторять |
separator-thousands |
Разделитель тысяч в числах: пустая строка отключает разделение (года, ID и т.п.) |
_empty_ |
| Поведение/валидация | ||
default не везде |
NULL1 |
|
donotquery |
Не включать поле в SELECT-запрос списка (1=да; например, для виртуальных полей или скрытых колонок) |
1 |
| Поведение списка | ||
strike-flag |
Имя SQL-поля-флага: значение зачёркивается, когда поле = 1 (например, для уволенных сотрудников) |
dismissedmodule_deletedobj_deletedlang_deleted |
Примеры из реального кода 8
<col name="cnt_level{{l.significance_risk}}" sort-direction="desc" type="text" zero="-" group="Значимость" short="{{l.title_short_sf}}" caption="{{l.title_sf}}" link-target="_blank"
link="{{REGISTERS_URI}}&filters[company_id]={{row.company_id}}&filters[f_did]={{row.depid}}&filters[level_risk]={{l.significance_risk}}"
>
<opt key="0" comparison="GT" cell-class="{{l.class}}" />
</col>
<col field="arr" type="array" caption="Заблокированно" inline="1" sqlrepr="CASE dkb_corporate_security_ban_structure.type
WHEN 1 THEN COALESCE(l1.shortname, '')
WHEN 2 THEN COALESCE(contragenty.fullname, '')
WHEN 3 THEN COALESCE(departments.fullname, '')
END" >
<subcol field="type">
<opt key="1">ГК/Дивизион: </opt>
<opt key="2">Организация: </opt>
<opt key="3">Подразделение: </opt>
</subcol>
<subcol field="block_name" sqlrepr="CASE dkb_corporate_security_ban_structure.type
WHEN 1 THEN COALESCE(l1.shortname, '')
WHEN 2 THEN COALESCE(contragenty.fullname, '')
WHEN 3 THEN COALESCE(departments.fullname, '')
END" />
</col>
<col name="cnt" short="Всего" caption="Количество" hint="Количество всего пожарного обрудования" align="center" bold="1"
link='/{{sys.workspace}}/firesystems/{{row.aform}}?externvar[obj_id]={{obj_id}}{{row.params}}' linktarget="_blank"/>
<col name="damage_amount_btn" caption="Сумма ущерба в сутки или общая, млн.руб." zero="0"
text="{{row.damage_amount_btn}}"
align="center"
cell-color="{{row.type_color}}"
button-class="danger"
type="{{row.type_cell}}"
link-entity="{{row.links}}"
link-entity-id="{{row.id}}"
link-form-edit="1"
link-form-onclose="fnUpdateAllDataTables();"
link-form-externvars="reg_id:'{{reg_id}}', parent_form:'{{parent_form}}', from:'{{from}}'" />
<col name="status_akt_full" group="Акт" caption="Статус" type="array" searchrepr="CASE audit_control_groups.status_sm
WHEN 'Audit_control_groups_send_plan_events' THEN 'Направлен в ПЕ в работу'
ELSE sm_statuses.st_name
END" align="center">
<subcol name="status_akt"/>
<subcol name="status_akt_adate" type="date"/>
</col>
<col name="bdate" caption="Дата рождения" type="date" separator-thousands="" align="center" />
<col field="currency" _type="float" group="Курс провайдера" caption="Валюта" sqlrepr="IF(edu4_protocols.cost_type = 1, edu4_protocols.currency, protocols_pc.currency)" hidden="1" />
<col name="quarter_{{i}}" group="Состояние отчёта по кварталам" caption="{{quarter_num}}" type="array" width="150"
link-entity="{{sys.file}}"
link-control="qform"
link-form-externvars="from:'{{sys.file}}', aquarter:'{{i}}', ayear:'{{filter.ayear}}', role_field:'{{row.role_field}}', a_project_group_id:'{{row.a_project_group_id}}', a_project_division_id:'{{row.a_project_division_id}}', risk_area_id:'{{row.risk_area_id}}', func_area_id:'{{row.func_area_id}}', company_id:'{{row.company_id}}', person_id:'{{row.pid}}'"
link-form-edit="1" nowrap="1"
>
<subcol name="quarter_{{i}}_files">…</subcol>
<subcol name="quarter_{{i}}_signed">…</subcol>
<subcol name="quarter_{{i}}_exported">…</subcol>
</col>