Forum Discussion

Puja's avatar
Puja
Helper III
3 years ago
Solved

Season Help

Hello All ,

I need some help with Season Slicer.

 

I have Season and Date (Weekly Snapshots)table.

SEASON
M19
S19
M20
S20
M21
S21
M22
S22

Season range :

If it is M  Jan  -July

If it is S April -March

If user selects M22, then the dates should be Jan thru July of same year(2022).

If user selects S22 then the dates shuld be Appril 2021 thru March 2022.

 

Can some one help with this please.

TIA

 

     

 

 

 

 

  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi  Puja ,

     

    You can modify it to the following dax:

    When M is selected, the minimum value from January to July of the Season Year is displayed.

    When S is selected, the March of Season Year -1 to the April minimum of Season Year are displayed.

    Flag =
    VAR _select =
        SELECTEDVALUE ( 'Season Table'[Season] )
    VAR _year =
        VALUE ( "20" & "" & RIGHT ( _select, 2 ) )
    VAR _code =
        MAXX (
            FILTER ( ALL ( 'Season Table' ), 'Season Table'[Season] = _select ),
            [Code]
        )
    VAR _MJulyfirst =
        MINX (
            FILTER (
                ALL ( 'Date table' ),
                YEAR ( 'Date table'[Date] ) = _year
                    && MONTH ( 'Date table'[Date] ) = 7
            ),
            [Date]
        )
    VAR _SMarchfirst =
        MINX (
            FILTER (
                ALL ( 'Date table' ),
                YEAR ( 'Date table'[Date] ) = _year
                    && MONTH ( 'Date table'[Date] ) = 3
            ),
            [Date]
        )
    VAR _Smindate =
        DATE ( _year - 1, 4, 1 )
    RETURN
        SWITCH (
            TRUE (),
            _code = "M"
                && MAX ( 'Date table'[Date] ) >= DATE ( _year, 1, 1 )
                && MAX ( 'Date table'[Date] ) <= _MJulyfirst, 1,
            _code = "S"
                && MAX ( 'Date table'[Date] ) >= _Smindate
                && MAX ( 'Date table'[Date] ) <= _SMarchfirst, 1,
            0
        )
    

     

     

     

    Best Regards,

    Liu Yang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

9 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi  Puja ,

     

    Here are the steps you can follow:

    1. Create measure.

    Flag =
    var _select=SELECTEDVALUE('Season Table'[Season])
    var _code=MAXX(FILTER(ALL('Season Table'),'Season Table'[Season]=_select),[Code])
    var _MJulyfirst=MINX(FILTER(ALL('Date table'),YEAR('Date table'[Date])=2022&&MONTH('Date table'[Date])=7),[Date])
    var _SMarchfirst=MINX(FILTER(ALL('Date table'),YEAR('Date table'[Date])=2022&&MONTH('Date table'[Date])=3),[Date])
    return
    SWITCH(
        TRUE(),
        _code="M"&&MAX('Date table'[Date])>=DATE(2022,1,1)&&MAX('Date table'[Date])<=_MJulyfirst,1,
        _code="S"&&MAX('Date table'[Date])>=DATE(2021,4,1)&&MAX('Date table'[Date])<=_SMarchfirst,1,0)

    2. Place [Flag]in Filters, set is=1, apply filter.

    3. Result:

    M22:

    S22:

     

    Best Regards,

    Liu Yang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

    • Puja's avatar
      Puja
      Helper III

      Hi Anonymous  Thank you somuch.

      This looks promising solution.

      Can we make it dynamic for other seasons as well ?

      Date range is same for M and S types.

      If user selects M type, then the dates should be Jan thru July (min date) of same year.

      If user selects S type then the dates shuld be Appril thru March(min date) .

       

      Note: season number represents year.

      ex: M21 = YEAR 2021

           S13 = YEAR 2013

      Thanks again.

      Puja

       

       

       

       

       

  • Puja , You have map these season with you date table. Date table should have column for that range.

     

    If this does not help
    Can you share sample data and sample output in table format? Or a sample pbix after removing sensitive data.

    • Puja's avatar
      Puja
      Helper III

      amitchandak  sorry this wont work. 

      If I select season , I see previous years data as well.

       

      Thanks

  • Puja's avatar
    Puja
    Helper III

    Anonymous 

    Could you help me with this req . 🙂

     

    TIA

    • FreemanZ's avatar
      FreemanZ
      Super User

      Can you share sample data and sample output in table format? 

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi  Puja ,

     

    You can modify it to the following dax:

    When M is selected, the minimum value from January to July of the Season Year is displayed.

    When S is selected, the March of Season Year -1 to the April minimum of Season Year are displayed.

    Flag =
    VAR _select =
        SELECTEDVALUE ( 'Season Table'[Season] )
    VAR _year =
        VALUE ( "20" & "" & RIGHT ( _select, 2 ) )
    VAR _code =
        MAXX (
            FILTER ( ALL ( 'Season Table' ), 'Season Table'[Season] = _select ),
            [Code]
        )
    VAR _MJulyfirst =
        MINX (
            FILTER (
                ALL ( 'Date table' ),
                YEAR ( 'Date table'[Date] ) = _year
                    && MONTH ( 'Date table'[Date] ) = 7
            ),
            [Date]
        )
    VAR _SMarchfirst =
        MINX (
            FILTER (
                ALL ( 'Date table' ),
                YEAR ( 'Date table'[Date] ) = _year
                    && MONTH ( 'Date table'[Date] ) = 3
            ),
            [Date]
        )
    VAR _Smindate =
        DATE ( _year - 1, 4, 1 )
    RETURN
        SWITCH (
            TRUE (),
            _code = "M"
                && MAX ( 'Date table'[Date] ) >= DATE ( _year, 1, 1 )
                && MAX ( 'Date table'[Date] ) <= _MJulyfirst, 1,
            _code = "S"
                && MAX ( 'Date table'[Date] ) >= _Smindate
                && MAX ( 'Date table'[Date] ) <= _SMarchfirst, 1,
            0
        )
    

     

     

     

    Best Regards,

    Liu Yang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly

    • Puja's avatar
      Puja
      Helper III

      Perfect 🙂

       

      Thank you so much Anonymous  

    • Puja's avatar
      Puja
      Helper III

      Hi Anonymous ,

      I just noticed one limitation,

      When I select S23, should show , 2022 April until 2023 March.

      But I see blanks. Any thoughts ?