<?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 Re: Simplifying so that it works faster in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608691#M139468</link>
    <description>&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Avoid Using SUMMARIZE in CALCULATE&lt;/STRONG&gt;: The SUMMARIZE function can be computationally expensive, especially if your data table is large. Instead, try to create separate measures for aggregated calculations and use them in your main measure.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Break Down the Measure&lt;/STRONG&gt;: Try to break down the measure into smaller parts and then combine them. For instance, create separate measures for TotalAmount, ServedHours, and TotalServedHoursWeek and then use them in your main measure.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Optimize IF Conditions&lt;/STRONG&gt;: Instead of using nested IF conditions, try to use logical functions like SWITCH.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Here's a simplified version of your measure:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;AllocatedAmountp2 =&lt;BR /&gt;VAR TotalAmountValue = [TotalAmountMeasure]&lt;BR /&gt;VAR ServedHoursValue = [ServedHoursMeasure]&lt;BR /&gt;VAR TotalServedHoursWeekValue = [TotalServedHoursWeekMeasure]&lt;/P&gt;&lt;P&gt;RETURN&lt;BR /&gt;CALCULATE (&lt;BR /&gt;SUMX (&lt;BR /&gt;'mediware vw_EMRToBilling',&lt;BR /&gt;VAR CalculatedAmount =&lt;BR /&gt;SWITCH (&lt;BR /&gt;TRUE (),&lt;BR /&gt;'mediware vw_EMRToBilling'[bsr_Visits] &amp;gt; 1, TotalAmountValue * DIVIDE(ServedHoursValue, TotalServedHoursWeekValue) * 'mediware vw_EMRToBilling'[Contractper],&lt;BR /&gt;'mediware vw_EMRToBilling'[feeschedc] = "Unknown", TotalAmountValue * 1,&lt;BR /&gt;TotalAmountValue * 'mediware vw_EMRToBilling'[Contractper]&lt;BR /&gt;)&lt;BR /&gt;RETURN&lt;BR /&gt;CalculatedAmount&lt;BR /&gt;)&lt;BR /&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please note the following:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;This is a simplified version, and you may need to adjust it based on your specific requirements and data model.&lt;/LI&gt;&lt;LI&gt;Ensure that the individual measures (TotalAmountMeasure, ServedHoursMeasure, TotalServedHoursWeekMeasure) are optimized for performance.&lt;/LI&gt;&lt;LI&gt;Consider creating necessary relationships, indexes, or optimizing your data model to improve overall performance.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;If the performance issue persists, you might need to look into optimizing your data model, considering hardware resources, or restructuring your data.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;If this post&amp;nbsp;helps, then please consider&amp;nbsp;Accepting it as the solution&amp;nbsp;to help the other members find it more quickly.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;In case there is still a problem, please feel free and explain your issue in detail,&amp;nbsp;It will be my pleasure to assist you in any way I can.&lt;/STRONG&gt;&lt;/P&gt;</description>
    <pubDate>Sun, 31 Dec 2023 07:07:23 GMT</pubDate>
    <dc:creator>123abc</dc:creator>
    <dc:date>2023-12-31T07:07:23Z</dc:date>
    <item>
      <title>Simplifying so that it works faster</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608526#M139454</link>
      <description>&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;AllocatedAmountp2 =&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CALCULATE&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;SUMX&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;SUMMARIZE&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'mediware vw_EMRToBilling'&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'mediware dimFacility'&lt;/SPAN&gt;&lt;SPAN&gt;[FacilityName]&lt;/SPAN&gt;&lt;SPAN&gt;, &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;-- Use the correct column name&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'mediware vw_EMRToBilling'&lt;/SPAN&gt;&lt;SPAN&gt;[bsr_Visits]&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'mediware vw_EMRToBilling'&lt;/SPAN&gt;&lt;SPAN&gt;[feeschedc]&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'mediware vw_EMRToBilling'&lt;/SPAN&gt;&lt;SPAN&gt;[Contractper]&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"TotalAmount"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;[TotalAmountMeasure]&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"ServedHours"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;[ServedHoursMeasure]&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;"TotalServedHoursWeek"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;[TotalServedHoursWeekMeasure]&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; ),&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;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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;[bsr_Visits]&lt;/SPAN&gt;&lt;SPAN&gt; &amp;gt; &lt;/SPAN&gt;&lt;SPAN&gt;1&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; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;[TotalAmount]&lt;/SPAN&gt;&lt;SPAN&gt; * &lt;/SPAN&gt;&lt;SPAN&gt;DIVIDE&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;[ServedHours]&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;[TotalServedHoursWeek]&lt;/SPAN&gt;&lt;SPAN&gt;) * &lt;/SPAN&gt;&lt;SPAN&gt;[Contractper]&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; &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; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;[feeschedc]&lt;/SPAN&gt;&lt;SPAN&gt; = &lt;/SPAN&gt;&lt;SPAN&gt;"Unknown"&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; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;[TotalAmount]&lt;/SPAN&gt;&lt;SPAN&gt; * &lt;/SPAN&gt;&lt;SPAN&gt;1&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; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;[TotalAmount]&lt;/SPAN&gt;&lt;SPAN&gt; * &lt;/SPAN&gt;&lt;SPAN&gt;[Contractper]&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; )&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; )&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;BR /&gt;&lt;/SPAN&gt;I have this measure that works correct in the visuals, but it works really slow all of my visuals can any one recom. a way to rewrite it so that it works faster or suggest another way to get the same results?&lt;BR /&gt;&lt;BR /&gt;Heres my data model&lt;BR /&gt;&lt;BR /&gt;&lt;img /&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Sat, 30 Dec 2023 19:20:11 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608526#M139454</guid>
      <dc:creator>ihmerr2c</dc:creator>
      <dc:date>2023-12-30T19:20:11Z</dc:date>
    </item>
    <item>
      <title>Re: Simplifying so that it works faster</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608691#M139468</link>
      <description>&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Avoid Using SUMMARIZE in CALCULATE&lt;/STRONG&gt;: The SUMMARIZE function can be computationally expensive, especially if your data table is large. Instead, try to create separate measures for aggregated calculations and use them in your main measure.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Break Down the Measure&lt;/STRONG&gt;: Try to break down the measure into smaller parts and then combine them. For instance, create separate measures for TotalAmount, ServedHours, and TotalServedHoursWeek and then use them in your main measure.&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;STRONG&gt;Optimize IF Conditions&lt;/STRONG&gt;: Instead of using nested IF conditions, try to use logical functions like SWITCH.&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;Here's a simplified version of your measure:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;AllocatedAmountp2 =&lt;BR /&gt;VAR TotalAmountValue = [TotalAmountMeasure]&lt;BR /&gt;VAR ServedHoursValue = [ServedHoursMeasure]&lt;BR /&gt;VAR TotalServedHoursWeekValue = [TotalServedHoursWeekMeasure]&lt;/P&gt;&lt;P&gt;RETURN&lt;BR /&gt;CALCULATE (&lt;BR /&gt;SUMX (&lt;BR /&gt;'mediware vw_EMRToBilling',&lt;BR /&gt;VAR CalculatedAmount =&lt;BR /&gt;SWITCH (&lt;BR /&gt;TRUE (),&lt;BR /&gt;'mediware vw_EMRToBilling'[bsr_Visits] &amp;gt; 1, TotalAmountValue * DIVIDE(ServedHoursValue, TotalServedHoursWeekValue) * 'mediware vw_EMRToBilling'[Contractper],&lt;BR /&gt;'mediware vw_EMRToBilling'[feeschedc] = "Unknown", TotalAmountValue * 1,&lt;BR /&gt;TotalAmountValue * 'mediware vw_EMRToBilling'[Contractper]&lt;BR /&gt;)&lt;BR /&gt;RETURN&lt;BR /&gt;CalculatedAmount&lt;BR /&gt;)&lt;BR /&gt;)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please note the following:&lt;/P&gt;&lt;UL&gt;&lt;LI&gt;This is a simplified version, and you may need to adjust it based on your specific requirements and data model.&lt;/LI&gt;&lt;LI&gt;Ensure that the individual measures (TotalAmountMeasure, ServedHoursMeasure, TotalServedHoursWeekMeasure) are optimized for performance.&lt;/LI&gt;&lt;LI&gt;Consider creating necessary relationships, indexes, or optimizing your data model to improve overall performance.&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;If the performance issue persists, you might need to look into optimizing your data model, considering hardware resources, or restructuring your data.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;If this post&amp;nbsp;helps, then please consider&amp;nbsp;Accepting it as the solution&amp;nbsp;to help the other members find it more quickly.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;In case there is still a problem, please feel free and explain your issue in detail,&amp;nbsp;It will be my pleasure to assist you in any way I can.&lt;/STRONG&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 31 Dec 2023 07:07:23 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608691#M139468</guid>
      <dc:creator>123abc</dc:creator>
      <dc:date>2023-12-31T07:07:23Z</dc:date>
    </item>
    <item>
      <title>Re: Simplifying so that it works faster</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608783#M139476</link>
      <description>&lt;P&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="428890" data-lia-user-login="ihmerr2c" class="lia-mention lia-mention-user"&gt;ihmerr2c&lt;/a&gt;&amp;nbsp;&lt;BR /&gt;&lt;BR /&gt;Try the following version:&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;AllocatedAmountp2 =

    SUMX (
        ADDCOLUMNS (
            SUMMARIZE (
                'mediware vw_EMRToBilling',
                'mediware dimFacility'[FacilityName],
                'mediware vw_EMRToBilling'[bsr_Visits],
                'mediware vw_EMRToBilling'[feeschedc],
                'mediware vw_EMRToBilling'[Contractper]
            ),
            "TotalAmount", [TotalAmountMeasure],
            "ServedHours", [ServedHoursMeasure],
            "TotalServedHoursWeek", [TotalServedHoursWeekMeasure]
        ),
        VAR __TotalAmount = [TotalAmount]
        VAR __Contractper = [Contractper]
        RETURN
            IF (
                [bsr_Visits] &amp;gt; 1,
                __TotalAmount * DIVIDE ( [ServedHours], [TotalServedHoursWeek] ) * __Contractper,
                IF ( [feeschedc] = "Unknown", __TotalAmount * 1, __TotalAmount * __Contractper )
            )
    )
&lt;/LI-CODE&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 31 Dec 2023 12:27:21 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/Simplifying-so-that-it-works-faster/m-p/3608783#M139476</guid>
      <dc:creator>Fowmy</dc:creator>
      <dc:date>2023-12-31T12:27:21Z</dc:date>
    </item>
  </channel>
</rss>

