{% set dimensions = get_kpi_dimensions_per_model("CANCELLED_BOOKINGS") %}

{{
    config(
        materialized="table", unique_key=["end_date", "dimension", "dimension_value"]
    )
}}


{% for dimension in dimensions %}
    select
        -- Unique Key --
        start_date,
        end_date,
        {{ dimension.dimension }} as dimension,
        {{ dimension.dimension_value }} as dimension_value,
        -- Metrics --
        sum(cancelled_bookings) as cancelled_bookings
    from {{ ref("int_kpis__metric_monthly_cancelled_bookings") }}
    group by 1, 2, 3, 4
    {% if not loop.last %}
        union all
    {% endif %}
{% endfor %}
