|
ORE Studio 0.0.4
|
Persistent template for a scheduled report. More...
#include <report_definition.hpp>

Public Attributes | |
| int | version = 0 |
| Version number for optimistic locking and change tracking. | |
| utility::uuid::tenant_id | tenant_id = utility::uuid::tenant_id::system() |
| Tenant identifier for multi-tenancy isolation. | |
| boost::uuids::uuid | id |
| UUID uniquely identifying this report definition. | |
| std::string | name |
| Unique name for the report definition within a tenant. | |
| boost::uuids::uuid | party_id |
| Party that owns this report definition. | |
| std::string | description |
| Optional human-readable description of the report. | |
| std::string | report_type |
| Report type code (FK to ores_reporting_report_types_tbl). | |
| std::optional< boost::uuids::uuid > | fsm_state_id |
| Current FSM state (FK to ores_dq_fsm_states_tbl). Null until first activation. | |
| std::string | schedule_expression |
| Validated cron expression driving report recurrence. | |
| std::string | concurrency_policy |
| Concurrency policy code (FK to ores_reporting_concurrency_policies_tbl). | |
| std::optional< boost::uuids::uuid > | scheduler_job_id |
| Scheduler job UUID (FK to ores_scheduler_job_definitions_tbl). Present only when status is active. | |
| std::string | modified_by |
| Username of the person who last modified this report definition. | |
| std::string | performed_by |
| Username of the account that performed this action. | |
| std::string | change_reason_code |
| Code identifying the reason for the change. | |
| std::string | change_commentary |
| Free-text commentary explaining the change. | |
| std::chrono::system_clock::time_point | recorded_at |
| Timestamp when this version of the record was recorded. | |
Persistent template for a scheduled report.
The persistent template for a report. Describes what to run, when to run it, and how to handle concurrent executions. Type-specific configuration (e.g. risk parameters) lives in a separate table keyed by report_definition_id.
Lifecycle is managed through the report_definition_lifecycle FSM machine. fsm_state_id points to the current state in ores_dq_fsm_states_tbl.
scheduler_job_id links to ores_scheduler_job_definitions_tbl.id and is set by the scheduler service when the definition is activated (state: active). It is cleared when the definition is suspended or archived.
| std::string change_reason_code |
Code identifying the reason for the change.
References change_reasons table (soft FK).