Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
marcod
Frequent Visitor

Help DAX New Measure Calculation Previous Year

Hi,

 

I've created a measure (MEASURE_X_PREVIOUS_YEAR ) on my tabular model to compare the amount of the MEASURE_X with the same measure in the previous year working with weeks and days of the weeks 

 

a) I've added a calculated field on my "Date table" as 

 

DATE[DT_ISODAYWEEKYEAR]=

value(DATE[DT_WEEKDAYNUM])*1000000+ value(DATE[DT_ISOWEEKNUMBERYEARINT])*10000+value(DATE[DT_ISOWEEKREFYEAR])

 

DT_DATEDT_ISODAYWEEKYEAR
08/02/20146062014
09/02/20147062014
05/05/20141192014
06/05/20142192014

 

b) I've created an intermediate measure to calculate the value of MEASURE_X in the same week of the previous year by day

 

MEASURE_X_PREVIOUS_YEAR_TMP:=Calculate([MEASURE_X];Filter(ALL('DATE'); DATE[DT_ISODAYWEEKYEAR] = Max( TEMPO[DT_ISODAYWEEKYEAR])-1))

 

c) I've created the final Measure 

 

MEASURE_X_PREVIOUS_YEAR :=SUMX (VALUES(DATE[DT_ISODAYWEEKYEAR]) ;[MEASURE_A_PREVIOUS_YEAR_TMP])

 

This Measure works great both in day calculation and in the aggregation. 

 

Etichette di rigaMEASURE_XMEASURE_X_PREVIOUS_YEAR
2019280 € 
WK 02280 € 
110 € 
220 € 
330 € 
440 € 
550 € 
660 € 
770 € 
2020497 €280 €
WK 02497 €280 €
180 €10 €
281 €20 €
382 €30 €
483 €40 €
584 €50 €
61 €60 €
786 €70 €

 

Now I'm trying to create another MEASURE_Y_PREVIOUS_YEAR to calculate the number of the distincount of product sold in the previous YEAR (always working with weeks).

 

The MEASURE_Y is defined as :

 

MEASURE_Y:=DISTINCTCOUNT('TABLE_Y'[PRODUCT_ID])

 

I cannot use the same approach I've used with the MEASURE_X because it works for the single day, but in aggragation it gives the SUM of the distinctcount of the day. 

I need calculate the distinctcount of PRODUCT_ID  for the TABLE_Y filtered by DATE[DT_ISODAYWEEKYEAR] -1 

 

like in this example

 

Etichette di rigaMEASURE_YMEASURE_Y _PREVIOUS_YEAR
20193 
WK 023 
11 (A) 
22 (A,B) 
31 (B) 
41 (A) 
53 (A,B,C) 
61 (B) 
71 (C) 
2020 3
WK 02 3
1 1 (A)
2 2 (A,B)
3 1 (B)
4 1 (A)
5 3 (A,B,C)
6 1 (B)
7 1 (C)

 

 

Sorry for my English and sorry for the long post,
I hope I made myself clear.

 

Someone can help me ?

 

Best,

Marco

3 REPLIES 3
PaulDBrown
Community Champion
Community Champion

Create a new column in the Date table using:

YearWeek = Date[Year] *100 + Date[WeekNumber]

Then create the equivalent measure to:

PY week sales =
VAR _Date =
    MAX ( 'Calendar Table'[Date] )
VAR WeekNum =
    WEEKNUM ( _Date )
VAR PYWeek =
    ( MAX ( 'Calendar Table'[Year] ) - 1 ) * 100 + WeekNum
RETURN
    CALCULATE (
        [MEASURE_Y],
        FILTER ( ALL ( 'Calendar Table' ), 'Calendar Table'[YearWeek] = PYWeek )
    )




Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Hi Paul, 

Thanks for the answer. I've tried to implement your solution, but it works great only for week aggregation and not for day values,
Example :

Day Week               MisureY          MisureY_PY

 

marcod_0-1630659868266.png

 

The values of days of the week  are the same of the aggragation 

 

Marco



Try changing the measure to:

PY week sales =
VAR _Date =
    MAX ( 'Calendar Table'[Date] )
VAR WeekNum =
    WEEKNUM ( _Date )
VAR PYWeek =
    ( MAX ( 'Calendar Table'[Year] ) - 1 ) * 100 + WeekNum
RETURN
    CALCULATE (
        [MEASURE_Y],
        FILTER ( ALL ( 'Calendar Table' [YearWeek] ), 'Calendar Table'[YearWeek] = PYWeek )
    )




Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

Check out the November 2024 Power BI update to learn about new features.