<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic DAX Aggregate by multiple fields in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3227991#M118291</link>
    <description>&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am fairly new to power bi and have come across a road blocker while creating a measure. I'm trying to aggregate the measure based on several fields from different but related tables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dummy Data Model:&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Measures Calculated :&lt;/P&gt;&lt;P&gt;Step1-------------&lt;/P&gt;&lt;P&gt;MarginAmt_Y = CALCULATE(SUM(MarginAmt), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;MarginAmt_N = CALCULATE(SUM(MarginAmt), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;NetAmt_Y = CALCULATE(SUM(NetAmt), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;NetAmt_Y = CALCULATE(SUM(NetAmt), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;QtyAmt_Y = CALCULATE(SUM(Qty), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;Qty_Y = CALCULATE(SUM(Qty), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step2 ---------------------&lt;/P&gt;&lt;P&gt;Y_Margin/QTY = DIVIDE([NetAmt_Y] - [MarginAmt_Y], [Qty_Y])&lt;/P&gt;&lt;P&gt;N_Margin/QTY = DIVIDE([NetAmt_N] - [MarginAmt_N], [Qty_N])&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step3 -----------------------&lt;/P&gt;&lt;P&gt;FinalMeasure =&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;IF&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;OR&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;[Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;BLANK&lt;/SPAN&gt;&lt;SPAN&gt; (), &lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;BLANK&lt;/SPAN&gt;&lt;SPAN&gt; ()),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;IF&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;lt; &lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ( (&lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; - &lt;/SPAN&gt;&lt;SPAN&gt;[Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;) * &lt;/SPAN&gt;&lt;SPAN&gt;[Qty_N]&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, the final measure is returning a zero, as it is calculating at overall level. How do I agrregate it by CustId, BranchId, ItemId&lt;/P&gt;&lt;P&gt;something like:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Measure = SUM(Aggr(&lt;/STRONG&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;IF (&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; OR([Y_Margin/QTY] = BLANK (), [N_Margin/QTY] = BLANK ()),&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; 0,&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; IF (&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [Y_Margin/QTY]&amp;nbsp;&amp;lt; [N_Margin/QTY],&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ( ([N_Margin/QTY] - [Y_Margin/QTY]) * [Qty_N]),&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; )&lt;/STRONG&gt;&lt;STRONG&gt;),BranchId, custid, itemid))&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;BR /&gt;Desired Output:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;BranchId&lt;/TD&gt;&lt;TD&gt;CustId&lt;/TD&gt;&lt;TD&gt;FinalMeasure&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;70&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 234.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;65&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 156.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;65&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 786.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;54&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 156.00&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;Any help is appreciated! Thank you&lt;/P&gt;</description>
    <pubDate>Wed, 10 May 2023 01:53:53 GMT</pubDate>
    <dc:creator>datajunkie_29</dc:creator>
    <dc:date>2023-05-10T01:53:53Z</dc:date>
    <item>
      <title>DAX Aggregate by multiple fields</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3227991#M118291</link>
      <description>&lt;P&gt;Hello all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am fairly new to power bi and have come across a road blocker while creating a measure. I'm trying to aggregate the measure based on several fields from different but related tables.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dummy Data Model:&lt;/P&gt;&lt;P&gt;&lt;img /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Measures Calculated :&lt;/P&gt;&lt;P&gt;Step1-------------&lt;/P&gt;&lt;P&gt;MarginAmt_Y = CALCULATE(SUM(MarginAmt), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;MarginAmt_N = CALCULATE(SUM(MarginAmt), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;NetAmt_Y = CALCULATE(SUM(NetAmt), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;NetAmt_Y = CALCULATE(SUM(NetAmt), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;QtyAmt_Y = CALCULATE(SUM(Qty), FILTER(QL_Flag = "Y")&lt;/P&gt;&lt;P&gt;Qty_Y = CALCULATE(SUM(Qty), FILTER(QL_Flag = "N")&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step2 ---------------------&lt;/P&gt;&lt;P&gt;Y_Margin/QTY = DIVIDE([NetAmt_Y] - [MarginAmt_Y], [Qty_Y])&lt;/P&gt;&lt;P&gt;N_Margin/QTY = DIVIDE([NetAmt_N] - [MarginAmt_N], [Qty_N])&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step3 -----------------------&lt;/P&gt;&lt;P&gt;FinalMeasure =&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;IF&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;OR&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;[Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;BLANK&lt;/SPAN&gt;&lt;SPAN&gt; (), &lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;BLANK&lt;/SPAN&gt;&lt;SPAN&gt; ()),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;IF&lt;/SPAN&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&amp;lt; &lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ( (&lt;/SPAN&gt;&lt;SPAN&gt;[N_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt; - &lt;/SPAN&gt;&lt;SPAN&gt;[Y_Margin/QTY]&lt;/SPAN&gt;&lt;SPAN&gt;) * &lt;/SPAN&gt;&lt;SPAN&gt;[Qty_N]&lt;/SPAN&gt;&lt;SPAN&gt;),&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, the final measure is returning a zero, as it is calculating at overall level. How do I agrregate it by CustId, BranchId, ItemId&lt;/P&gt;&lt;P&gt;something like:&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Measure = SUM(Aggr(&lt;/STRONG&gt;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;IF (&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; OR([Y_Margin/QTY] = BLANK (), [N_Margin/QTY] = BLANK ()),&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; 0,&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; IF (&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; [Y_Margin/QTY]&amp;nbsp;&amp;lt; [N_Margin/QTY],&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ( ([N_Margin/QTY] - [Y_Margin/QTY]) * [Qty_N]),&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 0&lt;/STRONG&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; )&lt;/STRONG&gt;&lt;STRONG&gt;),BranchId, custid, itemid))&lt;/STRONG&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&lt;BR /&gt;Desired Output:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;BranchId&lt;/TD&gt;&lt;TD&gt;CustId&lt;/TD&gt;&lt;TD&gt;FinalMeasure&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;70&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 234.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;65&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 156.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;65&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 786.00&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;54&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;$ 156.00&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;Any help is appreciated! Thank you&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 01:53:53 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3227991#M118291</guid>
      <dc:creator>datajunkie_29</dc:creator>
      <dc:date>2023-05-10T01:53:53Z</dc:date>
    </item>
    <item>
      <title>Re: DAX Aggregate by multiple fields</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3228399#M118342</link>
      <description>&lt;P&gt;You can use something like&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;My Measure =
SUMX (
    SUMMARIZE ( Sales, Sales[BranchId], Sales[custid], Sales[itemid] ),
    IF (
        OR ( [Y_Margin/QTY] = BLANK (), [N_Margin/QTY] = BLANK () ),
        0,
        IF (
            [Y_Margin/QTY] &amp;lt; [N_Margin/QTY],
            ( ( [N_Margin/QTY] - [Y_Margin/QTY] ) * [Qty_N] ),
            0
        )
    )
)
&lt;/LI-CODE&gt;</description>
      <pubDate>Wed, 10 May 2023 08:32:12 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3228399#M118342</guid>
      <dc:creator>johnt75</dc:creator>
      <dc:date>2023-05-10T08:32:12Z</dc:date>
    </item>
    <item>
      <title>Re: DAX Aggregate by multiple fields</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3229015#M118417</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="240987" data-lia-user-login="johnt75" class="lia-mention lia-mention-user"&gt;johnt75&lt;/a&gt;&amp;nbsp;, thank you for your response, the solution worked &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 10 May 2023 14:31:06 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Aggregate-by-multiple-fields/m-p/3229015#M118417</guid>
      <dc:creator>datajunkie_29</dc:creator>
      <dc:date>2023-05-10T14:31:06Z</dc:date>
    </item>
  </channel>
</rss>

