Forum Discussion

RajaCSN's avatar
RajaCSN
Icon for Advocate II rankAdvocate II
4 years ago
Solved

Need help on creating a Dax Formula

Hi All,

 

I have a situation as below:

 

My company sells a SET of four items, say SET_ABCD.  The set will contain Individual products A,B,C, and D.

We also sell the product A,B,C,D as individual pieces.

If I sell 500 numbers of SET_ABCD today, it means that I have sold 500 numbers of each of the four items.

When I aggregate the sales quantity for these individual items, the sale happenend as a SET should also be considered, and the expected results are as per the image below. 

 

I tried with Parent-Child Hierarchy which only gives me a summation for Set_ABCD but not for the individual items.

 

Is it possible to create a calculated column or a measure for this purpose?

 

Any suggestion would be highly appreciated.

 

 

  • RajaCSN , Only use final product in visual

     

    First measure 
    Qty = SUM(Data[QtySold]) 
    
    final measure
    
    Measure = sumx(SUMMARIZE('Product','Product'[Product],'Product'[Final Product], "_Sum", [Qty]),[_sum])

6 Replies

  • RajaCSN , Your product dimension should be like this. You will join with your table on product M-M join and use final product in display

     

    Product Final Product
    A A
    B B
    C C
    D D
    SET_ABCD A
    SET_ABCD B
    SET_ABCD C
    SET_ABCD D
  • Hi,

    Please check the below picture and the attached pbix file.

     

     

    Expected result: =
    VAR newtable =
    ADDCOLUMNS (
    VALUES ( 'Product'[Product] ),
    "individualqty",
    CALCULATE (
    IF (
    SELECTEDVALUE ( 'Product'[Product] ) = "SET ABCD",
    BLANK (),
    SUM ( Data[QtySold] )
    + CALCULATE ( SUM ( Data[QtySold] ), 'Product'[Product] = "SET ABCD" )
    )
    )
    )
    RETURN
    SUMX ( newtable, [individualqty] )

     

    • RajaCSN's avatar
      RajaCSN
      Icon for Advocate II rankAdvocate II

      Many thanks for providing this solution. As such your solultion is working fine and I am getting the exact total value for the expected result column also. 

       

      I am working on it to see if I can replace the hardcoded value of "SET ABCD" with another variable, as we have many such product sets. 

       

      I shall seek your assistance again, if required.

       

      Thank you so much for your time.

  • Hi Amit,

    Your solution is really cool. My bad, I tried with some complex logic here and there and you had just given me the "magic spell". 
    Since the Quantity Sold values are picked from the invoice table, the total value is not reflecting the expected total.

    This being a Many-to-Many model, that's how it should happen. Is that right? Or is there a way around to get the total values too, as expected? (Timebeing, I can switch off the TOTAL and use this table).

     

    Many thanks.

    • amitchandak's avatar
      amitchandak
      Icon for Super User rankSuper User

      RajaCSN , Only use final product in visual

       

      First measure 
      Qty = SUM(Data[QtySold]) 
      
      final measure
      
      Measure = sumx(SUMMARIZE('Product','Product'[Product],'Product'[Final Product], "_Sum", [Qty]),[_sum])
      • RajaCSN's avatar
        RajaCSN
        Icon for Advocate II rankAdvocate II

        Thank you so much Amit.  This works like a charm! (BTW, I am now able to understand how the SUMMARIZE function can be used in similar scenarios!)