Документация · Раздел 7 · DQ Checks
v1.0 · июль 2026

Раздел 7 · Справочник

DQ Checks — механизм проверок качества

Как устроены проверки качества (DQLA): описание в DG, привязка к форме в Form Builder, исполнение в Task Manager при согласовании отчёта.

Связка трёх уровней: описание проверок в DG → привязка к форме в Form Builder → исполнение в Task Manager при согласовании отчёта.

7.1 · Описание (в Data Governance)

  • Класс DQ_CHECK — отдельная проверка (описание).
  • Класс DQLA — набор/сборка проверок (контейнер), группирует DQ_CHECK и/или термины. Метаданные, без исполняемой логики в DG.

7.2 · Привязка (в Form Builder)

В конструкторе шаблона можно добавить DQLA к форме (блок «DQLA для отчётности»). Выбранные наборы сохраняются в report_template.settings.dqla_ids — это определяет, какие термины формы подлежат проверке.

7.3 · Исполнение (в Task Manager)

Реальная проверка — метод evaluate_submission_quality(submission_id) в task_manager_service.py:

  1. Берутся активные правила term_quality_rule (is_active=true), сгруппированные по term_id.
  2. Через _allowed_term_ids_by_template_dqla из settings.dqla_ids шаблона резолвится множество допустимых term_id. Если DQLA не заданы — правила применяются ко всем терминам.
  3. Для каждого значения применяется _apply_quality_ruleSubmissionQualityCheck {passed, message, rule_type}. Табличные поля — _evaluate_table_term_quality_checks.

Типы правил

Тип (rule_type)ПараметрыЛогика
requiredзначение не пустое (None / пустая строка / пустой список → провал)
regexpatternre.fullmatch(pattern, str(value)); пустое значение → провал
number_rangemin и/или maxзначение приводится к числу и сравнивается с границами

Валидация правил — _validate_rule_payload (regex компилируется, у number_range проверяется min ≤ max).

Где видно

  • На согласовании отчёта (/dq/submissions/{id}/checks) — индикатор зелёный / жёлтый / красный в очереди «Согласование отчётности».
  • Управление правилами — страница «Проверки качества» (DataQualityRulesPage): CRUD + отчёт об использовании (/dq/term-rules/usage).
Итог. «DQ checks» реализованы как term-level правила (required/regex/number_range) в Task Manager, сгруппированные через DQLA-наборы из DG и привязанные к форме.