Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

SamePeriodLastYear YTD -1 year Issue! help!

Hi guys,

I can't seem to wrap my head around this issue of getting last year YTD sales volume. 

Currently i have the sales volume from January 2023 to August 2023, and would like to compare it against January 2022 to August 2022. (But the issue is i cant seem to get the January 2022 - August 2022, at least not without hardcording)

I've tried Using a filter that filters my dimension date <= Max(FactSalesVolume.Date) with the Max(DimDate.Year) -1  , however it is currently showing blank. 

Could someone help me on this please thanks.

  •  Hi  Anonymous 

    1. Create a date table using the function CalendarAuto()

    2. Create a measure with the following DAX code

     

    YTD SamePeriodLastYear =
    VAR YTD_Value =
        CALCULATE ( SUM ( [SalesVolume] )DATESYTD ( 'Calendar'[Date].[Date] ) )
    VAR MaxDate =
        CALCULATE ( MAX ( 'DateTable'[Date] )ALL ( 'DateTable'[Date] ) )
    RETURN
        CALCULATE (
            [YTD_Value];
            SAMEPERIODLASTYEAR (
                INTERSECT (
                    VALUES ( 'DateTable'[Date].[Date] );
                    DATESBETWEEN ( 'DateTable'[Date].[Date]; BLANK ()MaxDate )
                )
            )
        )


    Did it work ? 👍 A kudos would be appreciated ‌‌📢 Mark it as a solution to help spreading knowledge

     

2 Replies

  •  Hi  Anonymous 

    1. Create a date table using the function CalendarAuto()

    2. Create a measure with the following DAX code

     

    YTD SamePeriodLastYear =
    VAR YTD_Value =
        CALCULATE ( SUM ( [SalesVolume] )DATESYTD ( 'Calendar'[Date].[Date] ) )
    VAR MaxDate =
        CALCULATE ( MAX ( 'DateTable'[Date] )ALL ( 'DateTable'[Date] ) )
    RETURN
        CALCULATE (
            [YTD_Value];
            SAMEPERIODLASTYEAR (
                INTERSECT (
                    VALUES ( 'DateTable'[Date].[Date] );
                    DATESBETWEEN ( 'DateTable'[Date].[Date]; BLANK ()MaxDate )
                )
            )
        )


    Did it work ? 👍 A kudos would be appreciated ‌‌📢 Mark it as a solution to help spreading knowledge

     

  •  Hi  Anonymous 

    1. Create a date table using the function CalendarAuto()

    2. Create a measure with the following DAX code

     

    YTD SamePeriodLastYear =
    VAR YTD_Value =
        CALCULATE ( SUM ( [SalesVolume] )DATESYTD ( 'Calendar'[Date].[Date] ) )
    VAR MaxDate =
        CALCULATE ( MAX ( 'DateTable'[Date] )ALL ( 'DateTable'[Date] ) )
    RETURN
        CALCULATE (
            [YTD_Value];
            SAMEPERIODLASTYEAR (
                INTERSECT (
                    VALUES ( 'DateTable'[Date].[Date] );
                    DATESBETWEEN ( 'DateTable'[Date].[Date]; BLANK ()MaxDate )
                )
            )
        )


    Did it work ? 👍 A kudos would be appreciated ‌‌📢 Mark it as a solution to help spreading knowledge