Forum Discussion

Kishorb's avatar
Kishorb
Frequent Visitor
7 years ago
Solved

DAX

HI , I  need a help  in correcting measure defination which was display 'second lowest value' into a table but when i used this measure into Card visual then blank() value displayed. 

I have created below measure which is calculated Deptname and first lowest and second lowest values into table visuals based on SalesRep Slicer values selection

 

1. SalesDeptName = if(isfiltered('Sales Data'[SalesRep]),selectedvalue('Sales Data'[Dep]))

2. First Lowest Target = Calculate(Calculate(Min('Sales Data'[Target]),AllExcept('Sales Data','Sales Data'[Dep])),filter('Sales Data','Sales Data'[Dep] =[SalesDeptName]))

3. MRank2 = RANKX(filter(all('Sales Data'),'Sales Data'[Dep] = selectedvalue('Sales Data'[Dep])),Calculate(Sum('Sales Data'[Target])),,ASC,dense) = 2

4.Second lowest Quota = if( Calc[MRank2] = true(),Calculate(Sum('Sales Data'[Target])))

 

Please advice me on this

Thanks

 

Can you pls advice me on this

  • Kishorb,

     

    Use calculate column instead of measure to achieve the rank:

    MRank2 = 
    RANKX (
        FILTER (
            'Sales Data', 'Sales Data'[Dep] = EARLIER('Sales Data'[Dep])
        ),
        RANKX ( ALL ( 'Sales Data' ), 'Sales Data'[Target],, DESC, Dense)
    )

    Then modify the measure like below:

    Second lowest Quota = 
    VAR lowest_count = COUNTROWS(FILTER('Sales Data', 'Sales Data'[MRank2] = 1))
    RETURN
    CALCULATE(MAX('Sales Data'[Target]), FILTER(ALL('Sales Data'), 'Sales Data'[MRank2] = lowest_count + 1))

      

     

    Community Support Team _ Jimmy Tao

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

5 Replies

    • Kishorb's avatar
      Kishorb
      Frequent Visitor

      I have shared below sample data table for reference

       

      SalesManagerSalesRepDepTarget
      PeterAndrewProp1210000
      PeterMacmanProp1280000
      PeterAlexProp1210000
      PeterJackProp178000
      PeterJoeProp1120000
      PeterpeterProp1120000
      PeterAdamProp1120000
      PeterStephanieProp1210000
      PeterKirstenProp1350000
      LendaAjayPro25000000
      LendaRockyPro23000000
      LendaPratikPro23500000
      LendaHarshalPro21000000
      LendaDasPro22500000
      LendaVivekPro21700000
      LendaLinaPro21500000
      LendaDhoniPro21000000
      • v-yuta-msft's avatar
        v-yuta-msft
        Community Support

        Kishorb,

         

        Use calculate column instead of measure to achieve the rank:

        MRank2 = 
        RANKX (
            FILTER (
                'Sales Data', 'Sales Data'[Dep] = EARLIER('Sales Data'[Dep])
            ),
            RANKX ( ALL ( 'Sales Data' ), 'Sales Data'[Target],, DESC, Dense)
        )

        Then modify the measure like below:

        Second lowest Quota = 
        VAR lowest_count = COUNTROWS(FILTER('Sales Data', 'Sales Data'[MRank2] = 1))
        RETURN
        CALCULATE(MAX('Sales Data'[Target]), FILTER(ALL('Sales Data'), 'Sales Data'[MRank2] = lowest_count + 1))

          

         

        Community Support Team _ Jimmy Tao

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