Adding WoW QoQ columns


I have a dashboard with daily/weekly/monthly/quarterly granularity according to the filter choosed by user. Now I want to add DoD, WoW, MoM, QoQ columns in between each column to reflect each metric’s change from yesterday. How can I do it?

Hi @Bonnie213 , welcome to the QS Community!
How are you changing the values aggregation in this moment?

I’ve tried replicating your case.

Let’s say I have these fields for grouping:

  • Region
  • Subregion
  • Country

Then for value and ordering I have

  • Order_Date
  • Sales

I’ve created a param, e.g. TimeGranularity, and then a control which can have as values Day, Week, Month or Year.

Now I have one calculated field to get the correctly aggregated date, something like OrderDate_Trunc:

ifelse(
  ${TimeGranularity} = 'Day', truncDate('DD', {Order Date}),
  ${TimeGranularity} = 'Week', truncDate('WK', {Order Date}),
  ${TimeGranularity} = 'Month', truncDate('MM', {Order Date}),
  ${TimeGranularity} = 'Year', truncDate('YYYY', {Order Date}),
  {Order Date}
)

Now I can use this field as column in my Pivot Table.

To obtain the period over period difference (e.g.) I can create different fields, like (each row is a different field):

PoP_Day = periodOverPeriodDifference(sum(Sales), {OrderDate_Trunc}, "DAY", 1)
PoP_Week = periodOverPeriodDifference(sum(Sales), {OrderDate_Trunc}, "WEEK", 1)
PoP_Month = periodOverPeriodDifference(sum(Sales), {OrderDate_Trunc}, "MONTH", 1)
PoP_Year = periodOverPeriodDifference(sum(Sales), {OrderDate_Trunc}, "YEAR", 1)

Then a final field to select what has to be shown in the Pivot, like PoP:

ifelse(
  ${TimeGranularity} = 'Day', {PoP_Day},
  ${TimeGranularity} = 'Week', {PoP_Week},
  ${TimeGranularity} = 'Month', {PoP_Month},
  ${TimeGranularity} = 'Year', {PoP_Year},
  NULL
)

This last field become our new value in the Pivot, and now by changing the Time Granularity, everything should change accordingly.

Let me know if this works for you! :slight_smile:
Andrea

Thank you so much! That perfectly solved my question!

1 Like