Qform DSL knowledge base

<sql> ×1840 в коде

SQL/обработка

SQL-запрос: основной запрос списка, или вспомогательный запрос для choice/check/finishsql и пр.

Может содержать 4

ТегОписаниеВключений здесь
Оформление (HTML) 1 · включений здесь: 0
<b> не везде HTML жирное начертание (тег <b>)
Поля ввода 2 · включений здесь: 0
<field> не везде Поле для ввода информации в форму.
<opt> не везде Условное оформление значения столбца/поля (по key + comparison)
Структура: список 1 · включений здесь: 0
<cols> не везде Контейнер столбцов списка (с атрибутами defaultsort, *-flag и пр.)

Может встречаться внутри 13

ТегОписаниеВключений здесь
Поля ввода 1 · включений здесь: 898
<choice> Вариант выпадающего списка (статичный или динамический через SQL/array) 898
Структура: список 1 · включений здесь: 584
<list> Можно использовать <list> не только как embedded во вкладке, но и как полную замену списка модуля… 584
SQL/обработка 2 · включений здесь: 169
<check> Блок проверки данных перед сохранением (SQL или PHP, с critical/некритическим режимом) 169
<finishsql> не везде Финализирующий SQL — выполняется после store/delete (для пересчётов/триггеров на стороне приложения)
Модули/контролы 3 · включений здесь: 26
<module> Регистрация модуля в системе (в *.control.xml файлах) 25
<view> Дополнительный режим отображения списка (помимо стандартного грида) 1
<calendar> не везде Описание календарного представления списка
(без группы) 4 · включений здесь: 0
<calendar-source> не везде
<dbstructure> не везде
<map> не везде
<popup> не везде
Метаданные 1 · включений здесь: 0
<structure> не везде Описание структуры данных (системное)
Структура: доступ 1 · включений здесь: 0
<access> не везде Декларация прав доступа к сущности (entity, role-model, marker-flags)

Атрибуты 4

АтрибутОписаниеЗначения
Идентификация 2 · включений: 590
key
×578

Имя SQL-поля, играющего роль ключа в выборке списка (обычно "id")

idpidcodebbs_audit_testing_idcompany_idplan_meropr_id
alias
×12 · пример

SQL-алиас основной таблицы списка (для использования в WHERE/JOIN-выражениях)

qessfcovfire_checksrw_position
(без группы) 1 · включений: 13
value не везде
×13
titlefullname
Источник данных (SQL) 1 · включений: 8
on

Событие, при котором выполняется SQL: update — после изменения родительской записи (для каскадных пересчётов)

update

Примеры из реального кода 2

@alias packages/admissions/loto/company_settings.xml:27
<sql key="id" alias="ss"><![CDATA[
    SELECT ss.id
    , ss.lock_on_loto
    , ss.admissions_type
    , contragenty.shortname AS company
    FROM admissions_loto_assignments_company_settings ss
    JOIN contragenty ON (contragenty.id=ss.company_id)
    WHERE 1
    ORDER BY 1
]]></sql>
@on packages/firesystems/fire_objects_actions.control.xml:35
<sql on="update">
<![CDATA[
    UPDATE fire_objects
    LEFT JOIN
    (
     SELECT t.fire_obj_id
                , MIN(COALESCE(t.result, 1)) AS result
                FROM
                (
                        /* обслуживание */
                        SELECT a.fire_obj_id
                        …
]]>
</sql>