Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

sum by mainItem

Hi, 

What I thought would be an easy tasked proved more complex then I thought

 

Table A

itemSKcount
a5
b5
c6
d6
a7
b6
b1
d3

 

Item table

ItemSKMainitemid
ao
bo
cp
dp

 

Result

ItemCount by mainitem
a24
b24
c15
d15

 

 

Help me write dax for "Count by mainitem" please 🙂

 

I could give you all my filed attempts but i don't think it will help(?)

 

regards

  • Hi Anonymous 

    See the attached PBIX.

     

    First, you should ensure the model is set up like this (which I imagine it already is):

     

    Then create this measure:

    Count by mainitem = 
    CALCULATE (
        SUM ( 'Table A'[count] ),
        REMOVEFILTERS ( 'Item' ),
        VALUES ( 'Item'[Mainitemid] )
    )

    This measure sums 'Table A'[count] for the values of 'Item'[Mainitemid] corresponding to the visible rows of 'Item', but removing any other filters on the 'Item' table.

     

    Regards

3 Replies

  • Hi Anonymous 

    See the attached PBIX.

     

    First, you should ensure the model is set up like this (which I imagine it already is):

     

    Then create this measure:

    Count by mainitem = 
    CALCULATE (
        SUM ( 'Table A'[count] ),
        REMOVEFILTERS ( 'Item' ),
        VALUES ( 'Item'[Mainitemid] )
    )

    This measure sums 'Table A'[count] for the values of 'Item'[Mainitemid] corresponding to the visible rows of 'Item', but removing any other filters on the 'Item' table.

     

    Regards

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi OwenAuger

     

    Thanks for your quick reply. 
    I am getting an error on REMOVEFILTERS, 


    "Cannot find name 'REMOVEFILTERS'
    'REMOVEFILTERS' is not a function."

     

    I am using direct query to access data and there is a connection between the tabels like you describe (My model is more complex then this but I scaled down to only highlight the importnat parts. 

    I replaced REMOVEFILTER with ALL and from what i can se this is giving me the deciered result. 

    Thanks

    • OwenAuger's avatar
      OwenAuger
      Super User

      Glad to hear it's working (using ALL rather than REMOVEFILTERS).

      These functions are indeed equivalent when used in this way.

       

      If REMOVEFILTERS is unavailable, I'm guessing you are connecting to an older version of Analysis Services Tabular.

       

      For reference, the compatibility for DAX functions can be found on dax.guide:

      https://dax.guide/removefilters/