Merged PR 4501: Revert "Refactor display exclusion for clarity purposes"
# Description
_Describe your motivation and changes here._
# Checklist
- [ ] The edited models and dependants run properly with production data.
- [ ] The edited models are sufficiently documented.
- [ ] The edited models contain PK tests, and I've ran and passed them.
- [ ] I have checked for DRY opportunities with other models and docs.
- [ ] I've picked the right materialization for the affected models.
# Other
- [ ] Check if a full-refresh is required after this PR is merged.
Revert "Refactor display exclusion for clarity purposes"
Reverted commit `fdec616f`.
This commit is contained in:
parent
5eebb4f560
commit
7c4b0e752b
3 changed files with 33 additions and 37 deletions
|
|
@ -7,7 +7,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_total_revenue_in_gbp",
|
"previous_year_MTD": "previous_year_mtd_total_revenue_in_gbp",
|
||||||
"current_YTD": "current_ytd_total_revenue_in_gbp",
|
"current_YTD": "current_ytd_total_revenue_in_gbp",
|
||||||
"previous_YTD": "previous_ytd_total_revenue_in_gbp",
|
"previous_YTD": "previous_ytd_total_revenue_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 2,
|
"id_metric": 2,
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_revenue_retained_post_resolutions_in_gbp",
|
"previous_year_MTD": "previous_year_mtd_revenue_retained_post_resolutions_in_gbp",
|
||||||
"current_YTD": "current_ytd_revenue_retained_post_resolutions_in_gbp",
|
"current_YTD": "current_ytd_revenue_retained_post_resolutions_in_gbp",
|
||||||
"previous_YTD": "previous_ytd_revenue_retained_post_resolutions_in_gbp",
|
"previous_YTD": "previous_ytd_revenue_retained_post_resolutions_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 3,
|
"id_metric": 3,
|
||||||
|
|
@ -27,7 +27,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_total_guest_payments_in_gbp",
|
"previous_year_MTD": "previous_year_mtd_total_guest_payments_in_gbp",
|
||||||
"current_YTD": "current_ytd_total_guest_payments_in_gbp",
|
"current_YTD": "current_ytd_total_guest_payments_in_gbp",
|
||||||
"previous_YTD": "previous_ytd_total_guest_payments_in_gbp",
|
"previous_YTD": "previous_ytd_total_guest_payments_in_gbp",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 4,
|
"id_metric": 4,
|
||||||
|
|
@ -37,7 +37,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_xero_operator_net_fees_in_gbp",
|
"previous_year_MTD": "previous_year_mtd_xero_operator_net_fees_in_gbp",
|
||||||
"current_YTD": "current_ytd_xero_operator_net_fees_in_gbp",
|
"current_YTD": "current_ytd_xero_operator_net_fees_in_gbp",
|
||||||
"previous_YTD": "previous_ytd_xero_operator_net_fees_in_gbp",
|
"previous_YTD": "previous_ytd_xero_operator_net_fees_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 5,
|
"id_metric": 5,
|
||||||
|
|
@ -47,7 +47,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_xero_apis_net_fees_in_gbp",
|
"previous_year_MTD": "previous_year_mtd_xero_apis_net_fees_in_gbp",
|
||||||
"current_YTD": "current_ytd_xero_apis_net_fees_in_gbp",
|
"current_YTD": "current_ytd_xero_apis_net_fees_in_gbp",
|
||||||
"previous_YTD": "previous_ytd_xero_apis_net_fees_in_gbp",
|
"previous_YTD": "previous_ytd_xero_apis_net_fees_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 6,
|
"id_metric": 6,
|
||||||
|
|
@ -57,7 +57,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_billable_bookings",
|
"previous_year_MTD": "previous_year_mtd_billable_bookings",
|
||||||
"current_YTD": "current_ytd_billable_bookings",
|
"current_YTD": "current_ytd_billable_bookings",
|
||||||
"previous_YTD": "previous_ytd_billable_bookings",
|
"previous_YTD": "previous_ytd_billable_bookings",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 7,
|
"id_metric": 7,
|
||||||
|
|
@ -67,7 +67,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_live_deals",
|
"previous_year_MTD": "previous_year_mtd_live_deals",
|
||||||
"current_YTD": "current_ytd_live_deals",
|
"current_YTD": "current_ytd_live_deals",
|
||||||
"previous_YTD": "previous_ytd_live_deals",
|
"previous_YTD": "previous_ytd_live_deals",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 8,
|
"id_metric": 8,
|
||||||
|
|
@ -77,7 +77,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_new_deals",
|
"previous_year_MTD": "previous_year_mtd_new_deals",
|
||||||
"current_YTD": "current_ytd_new_deals",
|
"current_YTD": "current_ytd_new_deals",
|
||||||
"previous_YTD": "previous_ytd_new_deals",
|
"previous_YTD": "previous_ytd_new_deals",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 9,
|
"id_metric": 9,
|
||||||
|
|
@ -87,7 +87,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_churning_deals",
|
"previous_year_MTD": "previous_year_mtd_churning_deals",
|
||||||
"current_YTD": "current_ytd_churning_deals",
|
"current_YTD": "current_ytd_churning_deals",
|
||||||
"previous_YTD": "previous_ytd_churning_deals",
|
"previous_YTD": "previous_ytd_churning_deals",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 10,
|
"id_metric": 10,
|
||||||
|
|
@ -97,7 +97,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_waiver_payout_rate",
|
"previous_year_MTD": "previous_year_mtd_waiver_payout_rate",
|
||||||
"current_YTD": "current_ytd_waiver_payout_rate",
|
"current_YTD": "current_ytd_waiver_payout_rate",
|
||||||
"previous_YTD": "previous_ytd_waiver_payout_rate",
|
"previous_YTD": "previous_ytd_waiver_payout_rate",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 11,
|
"id_metric": 11,
|
||||||
|
|
@ -107,7 +107,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_resolutions_payout_rate",
|
"previous_year_MTD": "previous_year_mtd_resolutions_payout_rate",
|
||||||
"current_YTD": "current_ytd_resolutions_payout_rate",
|
"current_YTD": "current_ytd_resolutions_payout_rate",
|
||||||
"previous_YTD": "previous_ytd_resolutions_payout_rate",
|
"previous_YTD": "previous_ytd_resolutions_payout_rate",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 12,
|
"id_metric": 12,
|
||||||
|
|
@ -117,7 +117,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_operator_revenue_per_billable_booking",
|
"previous_year_MTD": "previous_year_mtd_operator_revenue_per_billable_booking",
|
||||||
"current_YTD": "current_ytd_operator_revenue_per_billable_booking",
|
"current_YTD": "current_ytd_operator_revenue_per_billable_booking",
|
||||||
"previous_YTD": "previous_ytd_operator_revenue_per_billable_booking",
|
"previous_YTD": "previous_ytd_operator_revenue_per_billable_booking",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 13,
|
"id_metric": 13,
|
||||||
|
|
@ -127,7 +127,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_waiver_revenue_per_billable_booking",
|
"previous_year_MTD": "previous_year_mtd_waiver_revenue_per_billable_booking",
|
||||||
"current_YTD": "current_ytd_waiver_revenue_per_billable_booking",
|
"current_YTD": "current_ytd_waiver_revenue_per_billable_booking",
|
||||||
"previous_YTD": "previous_ytd_waiver_revenue_per_billable_booking",
|
"previous_YTD": "previous_ytd_waiver_revenue_per_billable_booking",
|
||||||
"display_exclusion": "NONE",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 14,
|
"id_metric": 14,
|
||||||
|
|
@ -137,7 +137,7 @@
|
||||||
"previous_year_MTD": "-1*previous_year_mtd_xero_waiver_paid_back_to_host_in_gbp",
|
"previous_year_MTD": "-1*previous_year_mtd_xero_waiver_paid_back_to_host_in_gbp",
|
||||||
"current_YTD": "-1*current_ytd_xero_waiver_paid_back_to_host_in_gbp",
|
"current_YTD": "-1*current_ytd_xero_waiver_paid_back_to_host_in_gbp",
|
||||||
"previous_YTD": "-1*previous_ytd_xero_waiver_paid_back_to_host_in_gbp",
|
"previous_YTD": "-1*previous_ytd_xero_waiver_paid_back_to_host_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 15,
|
"id_metric": 15,
|
||||||
|
|
@ -147,7 +147,7 @@
|
||||||
"previous_year_MTD": "-1*previous_year_mtd_xero_host_resolution_amount_paid_in_gbp",
|
"previous_year_MTD": "-1*previous_year_mtd_xero_host_resolution_amount_paid_in_gbp",
|
||||||
"current_YTD": "-1*current_ytd_xero_host_resolution_amount_paid_in_gbp",
|
"current_YTD": "-1*current_ytd_xero_host_resolution_amount_paid_in_gbp",
|
||||||
"previous_YTD": "-1*previous_ytd_xero_host_resolution_amount_paid_in_gbp",
|
"previous_YTD": "-1*previous_ytd_xero_host_resolution_amount_paid_in_gbp",
|
||||||
"display_exclusion": "INVOICING",
|
"requires_invoicing_data": true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 16,
|
"id_metric": 16,
|
||||||
|
|
@ -157,7 +157,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_total_revenue_churn_rate",
|
"previous_year_MTD": "previous_year_mtd_total_revenue_churn_rate",
|
||||||
"current_YTD": "current_ytd_total_revenue_churn_rate",
|
"current_YTD": "current_ytd_total_revenue_churn_rate",
|
||||||
"previous_YTD": "previous_ytd_total_revenue_churn_rate",
|
"previous_YTD": "previous_ytd_total_revenue_churn_rate",
|
||||||
"display_exclusion": "ONGOING_MONTH",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id_metric": 17,
|
"id_metric": 17,
|
||||||
|
|
@ -167,7 +167,7 @@
|
||||||
"previous_year_MTD": "previous_year_mtd_onboarding_mrr",
|
"previous_year_MTD": "previous_year_mtd_onboarding_mrr",
|
||||||
"current_YTD": "current_ytd_onboarding_mrr",
|
"current_YTD": "current_ytd_onboarding_mrr",
|
||||||
"previous_YTD": "previous_ytd_onboarding_mrr",
|
"previous_YTD": "previous_ytd_onboarding_mrr",
|
||||||
"display_exclusion": "ONGOING_MONTH",
|
"requires_invoicing_data": false,
|
||||||
},
|
},
|
||||||
] %}
|
] %}
|
||||||
with
|
with
|
||||||
|
|
@ -189,7 +189,7 @@ with
|
||||||
{{ metric.id_metric }} as id_metric,
|
{{ metric.id_metric }} as id_metric,
|
||||||
-- quotation marks added because text format
|
-- quotation marks added because text format
|
||||||
'{{ metric.name }}' as metric_name,
|
'{{ metric.name }}' as metric_name,
|
||||||
'{{ metric.display_exclusion }}' as display_exclusion,
|
{{ metric.requires_invoicing_data }} as requires_invoicing_data,
|
||||||
{{ metric.current_month_MTD }} as current_month_mtd,
|
{{ metric.current_month_MTD }} as current_month_mtd,
|
||||||
{{ metric.previous_month_EOM }} as previous_month_eom,
|
{{ metric.previous_month_EOM }} as previous_month_eom,
|
||||||
{{ metric.previous_year_MTD }} as previous_year_mtd,
|
{{ metric.previous_year_MTD }} as previous_year_mtd,
|
||||||
|
|
|
||||||
|
|
@ -2538,19 +2538,13 @@ models:
|
||||||
data_tests:
|
data_tests:
|
||||||
- not_null
|
- not_null
|
||||||
|
|
||||||
- name: display_exclusion
|
- name: requires_invoicing_data
|
||||||
data_type: string
|
data_type: boolean
|
||||||
description: |
|
description: |
|
||||||
Category to indicate if the metric requires a certain exclusion due
|
Flag to indicate if the metric requires invoicing data to be calculated.
|
||||||
to relying on not timely information.
|
|
||||||
This will limit the display for reporting purposes.
|
This will limit the display for reporting purposes.
|
||||||
data_tests:
|
data_tests:
|
||||||
- not_null
|
- not_null
|
||||||
- accepted_values:
|
|
||||||
values:
|
|
||||||
- NONE
|
|
||||||
- INVOICING
|
|
||||||
- ONGOING_MONTH
|
|
||||||
|
|
||||||
- name: current_month_mtd
|
- name: current_month_mtd
|
||||||
data_type: numeric
|
data_type: numeric
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ with
|
||||||
),
|
),
|
||||||
latest_dates_per_financial_year as (
|
latest_dates_per_financial_year as (
|
||||||
select dimension, financial_year, id_metric, max(date) as latest_available_date
|
select dimension, financial_year, id_metric, max(date) as latest_available_date
|
||||||
from int_ytd_mtd_aggregated_main_metrics_overview m
|
from int_ytd_mtd_aggregated_main_metrics_overview
|
||||||
where
|
where
|
||||||
(
|
(
|
||||||
(
|
(
|
||||||
|
|
@ -12,18 +12,20 @@ with
|
||||||
-- invoicing cycle and it is before the 20th of the month, if it
|
-- invoicing cycle and it is before the 20th of the month, if it
|
||||||
-- is the 20th of the month or after, only exclude the current
|
-- is the 20th of the month or after, only exclude the current
|
||||||
-- month.
|
-- month.
|
||||||
display_exclusion = 'INVOICING'
|
requires_invoicing_data = true
|
||||||
and {{ is_date_before_20th_of_previous_month("date") }}
|
and {{ is_date_before_20th_of_previous_month("date") }}
|
||||||
)
|
)
|
||||||
or (
|
|
||||||
-- Handle exclusion for Churn/MRR metrics: do not show them in the
|
|
||||||
-- current
|
|
||||||
-- month.
|
|
||||||
display_exclusion = 'ONGOING_MONTH'
|
|
||||||
and date_trunc('month', m.date) > date_trunc('month', current_date)
|
|
||||||
)
|
|
||||||
-- Keep all history for the rest of metrics
|
-- Keep all history for the rest of metrics
|
||||||
or display_exclusion = 'NONE'
|
or requires_invoicing_data = false
|
||||||
|
)
|
||||||
|
-- Handle exclusion for Churn/MRR metrics: do not show them in the current
|
||||||
|
-- month.
|
||||||
|
and not (
|
||||||
|
(
|
||||||
|
lower(metric_name) like '%revenue%churn%rate%'
|
||||||
|
or lower(metric_name) like '%onboarding%mrr%'
|
||||||
|
)
|
||||||
|
and date_trunc('month', "date") = date_trunc('month', current_date)
|
||||||
)
|
)
|
||||||
group by dimension, financial_year, id_metric
|
group by dimension, financial_year, id_metric
|
||||||
)
|
)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue