<?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: Find the consecutive negative number from a measure in DAX Commands and Tips</title>
    <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611095#M176499</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to find the number of consecutive days when the profit (a measure) is a negative number. In the sample data below, the expect result should be 3.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I made an auxilery measure called Loss Making,&lt;/P&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;SPAN&gt;Loss Making =&lt;/SPAN&gt; &lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt; * (&lt;/SPAN&gt;&lt;SPAN&gt;[Profit]&lt;/SPAN&gt;&lt;SPAN&gt; &amp;lt; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am looking to do a running sum of the above measure to calculate the number consecutive loss days, but not sure how to setup the calculate/filter properly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Day&lt;/TD&gt;&lt;TD&gt;Revenue&lt;/TD&gt;&lt;TD&gt;Cost&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;Profit (Measure)&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;90&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;-10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;30&lt;/TD&gt;&lt;TD&gt;-10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;30&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;20&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;40&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-20&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;75&lt;/TD&gt;&lt;TD&gt;80&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-5&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-5&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Power BI file:&lt;/P&gt;&lt;P&gt;&lt;A href="https://limewire.com/d/2b2c0008-b44c-4395-9a21-352a609b8d33#-7GklRjbHQmOPyhxfFBw6bBLd3qlNcq_la6RgDV9w_A" target="_blank" rel="noopener"&gt;https://limewire.com/d/2b2c0008-b44c-4395-9a21-352a609b8d33#-7GklRjbHQmOPyhxfFBw6bBLd3qlNcq_la6RgDV9w_A&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you shed me some light please? Thanks in advance.&lt;/P&gt;</description>
    <pubDate>Sat, 15 Mar 2025 01:29:56 GMT</pubDate>
    <dc:creator>kc_1116</dc:creator>
    <dc:date>2025-03-15T01:29:56Z</dc:date>
    <item>
      <title>DAX: Find the consecutive negative number from a measure</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611095#M176499</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to find the number of consecutive days when the profit (a measure) is a negative number. In the sample data below, the expect result should be 3.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I made an auxilery measure called Loss Making,&lt;/P&gt;&lt;DIV&gt;&lt;PRE&gt;&lt;SPAN&gt;Loss Making =&lt;/SPAN&gt; &lt;SPAN&gt;1&lt;/SPAN&gt;&lt;SPAN&gt; * (&lt;/SPAN&gt;&lt;SPAN&gt;[Profit]&lt;/SPAN&gt;&lt;SPAN&gt; &amp;lt; &lt;/SPAN&gt;&lt;SPAN&gt;0&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am looking to do a running sum of the above measure to calculate the number consecutive loss days, but not sure how to setup the calculate/filter properly.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Day&lt;/TD&gt;&lt;TD&gt;Revenue&lt;/TD&gt;&lt;TD&gt;Cost&lt;/TD&gt;&lt;TD&gt;&lt;STRONG&gt;Profit (Measure)&lt;/STRONG&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;90&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;50&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;-10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;30&lt;/TD&gt;&lt;TD&gt;-10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;30&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;20&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;40&lt;/TD&gt;&lt;TD&gt;60&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-20&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;75&lt;/TD&gt;&lt;TD&gt;80&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-5&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;7&lt;/TD&gt;&lt;TD&gt;10&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;&lt;FONT color="#FF0000"&gt;-5&lt;/FONT&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;8&lt;/TD&gt;&lt;TD&gt;20&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Power BI file:&lt;/P&gt;&lt;P&gt;&lt;A href="https://limewire.com/d/2b2c0008-b44c-4395-9a21-352a609b8d33#-7GklRjbHQmOPyhxfFBw6bBLd3qlNcq_la6RgDV9w_A" target="_blank" rel="noopener"&gt;https://limewire.com/d/2b2c0008-b44c-4395-9a21-352a609b8d33#-7GklRjbHQmOPyhxfFBw6bBLd3qlNcq_la6RgDV9w_A&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can you shed me some light please? Thanks in advance.&lt;/P&gt;</description>
      <pubDate>Sat, 15 Mar 2025 01:29:56 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611095#M176499</guid>
      <dc:creator>kc_1116</dc:creator>
      <dc:date>2025-03-15T01:29:56Z</dc:date>
    </item>
    <item>
      <title>Re: DAX: Find the consecutive negative number from a measure</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611152#M176503</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1235520" data-lia-user-login="kc_1116" class="lia-mention lia-mention-user"&gt;kc_1116&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The logic I would follow is:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;For each Day &lt;STRONG&gt;&lt;EM&gt;d&lt;/EM&gt;&lt;/STRONG&gt; where Profit &amp;lt; 0 , find the nearest earlier Day &lt;EM&gt;&lt;STRONG&gt;d*&lt;/STRONG&gt;&lt;/EM&gt; where Profit &amp;gt;=0, and let &lt;EM&gt;&lt;STRONG&gt;Length = d - d*&lt;/STRONG&gt;&lt;/EM&gt;&lt;/LI&gt;
&lt;LI&gt;Return the maximum value of &lt;EM&gt;&lt;STRONG&gt;Length &lt;/STRONG&gt;&lt;/EM&gt;calculated for each day above.&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;I would suggest creating a Day or Date dimension separate from the fact table.&lt;/P&gt;
&lt;P&gt;In any case, here are a few ways to write this with your current model:&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;Max Consecutive Loss Days v3 =
VAR DaysWithProfit =
    FILTER ( VALUES ( 'Table'[Day] ), [Profit] &amp;gt;= 0 )
VAR MaxDayWithProfit =
    MAXX ( DaysWithProfit, 'Table'[Day] )
VAR MinDayMinus1 =
    MIN ( 'Table'[Day] ) - 1
VAR MaxDayPlus1 =
    MAX ( 'Table'[Day] ) + 1
VAR MaxLossLength =
    MAXX (
        DaysWithProfit,
        VAR PreviousDayWithProfit =
            COALESCE (
                OFFSET ( -1, DaysWithProfit, ORDERBY ( 'Table'[Day], ASC ) ),
                MinDayMinus1
            )
        RETURN
            'Table'[Day] - PreviousDayWithProfit - 1
    )
VAR MaxLossLengthAdj =
    MAX ( MaxLossLength, MaxDayPlus1 - MaxDayWithProfit - 1 )
RETURN
    MaxLossLengthAdj&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;Max Consecutive Loss Days v1 = 
VAR VisibleDays = VALUES ( 'Table'[Day] )
VAR MinDayMinus1 = MIN ( 'Table'[Day] ) - 1
VAR DaysWithLoss = FILTER ( VisibleDays, [Profit] &amp;lt; 0 )
VAR DaysWithProfit = EXCEPT ( VisibleDays, DaysWithLoss )
VAR Result =
    MAXX (
        DaysWithLoss,
        VAR CurrentDay = 'Table'[Day]
        VAR NearestProfitDay =
            CALCULATE (
                MAX ( 'Table'[Day] ),
                'Table'[Day] &amp;lt; CurrentDay,
                DaysWithProfit
            )
        -- Handle case when LastProfitDay is BLANK
        VAR NearestProfitDayAdj = COALESCE ( NearestProfitDay, MinDayMinus1 )
        RETURN
            CurrentDay - NearestProfitDayAdj
    )
RETURN
    Result&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;LI-CODE lang="markup"&gt;Max Consecutive Loss Days v2 = 
VAR VisibleDays = VALUES ( 'Table'[Day] )
VAR MinDayMinus1 = MIN ( 'Table'[Day] ) - 1
VAR Result =
    MAXX (
        VALUES ( 'Table'[Day] ),
        VAR CurrentDay = 'Table'[Day]
        VAR NearestProfitDay =
            CALCULATE (
                LASTNONBLANK ( 'Table'[Day], IF ( [Profit] &amp;gt;= 0, 1 ) ),
                'Table'[Day] &amp;lt;= CurrentDay,
                VisibleDays
            )
        -- Handle case when LastProfitDay is BLANK
        VAR NearestProfitDayAdj = COALESCE ( NearestProfitDay, MinDayMinus1 )
        RETURN
            CurrentDay - NearestProfitDayAdj
    )
RETURN
    Result&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Take a look here for a solution to a similar problem:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.sqlbi.com/tv/counting-consecutive-days-with-sales-unplugged-47/" target="_blank" rel="noopener"&gt;https://www.sqlbi.com/tv/counting-consecutive-days-with-sales-unplugged-47/&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Sat, 15 Mar 2025 06:00:00 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611152#M176503</guid>
      <dc:creator>OwenAuger</dc:creator>
      <dc:date>2025-03-15T06:00:00Z</dc:date>
    </item>
    <item>
      <title>Re: DAX: Find the consecutive negative number from a measure</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611827#M176516</link>
      <description>&lt;P&gt;Thanks for your help as always.&lt;/P&gt;&lt;P&gt;Btw, I believe understanding how filter context works is probably more important than DAX itself. Do you have any recommendation what books or other resources a beginner should read?&lt;/P&gt;</description>
      <pubDate>Sun, 16 Mar 2025 12:14:49 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611827#M176516</guid>
      <dc:creator>kc_1116</dc:creator>
      <dc:date>2025-03-16T12:14:49Z</dc:date>
    </item>
    <item>
      <title>Re: DAX: Find the consecutive negative number from a measure</title>
      <link>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611996#M176521</link>
      <description>&lt;P&gt;&lt;a href="javascript:void(0)" data-lia-user-mentions="" data-lia-user-uid="1235520" data-lia-user-login="kc_1116" class="lia-mention lia-mention-user"&gt;kc_1116&lt;/a&gt;&amp;nbsp;you're welcome!&lt;/P&gt;
&lt;P&gt;I agree, filter context and other core concepts are definitely important!&lt;/P&gt;
&lt;P&gt;The SQLBI DAX 101 series is a great resource, starting with&amp;nbsp;&lt;A href="https://www.sqlbi.com/articles/filter-context-in-dax/" target="_blank" rel="noopener"&gt;Filter Context in DAX&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Otherwise, books like&amp;nbsp;&lt;A href="https://mattallington.com.au/product/supercharge-power-bi/" target="_blank" rel="noopener"&gt;Supercharge Power BI by Matt Allington&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;For a more advanced treatment, I would recommend &lt;A href="https://www.sqlbi.com/books/the-definitive-guide-to-dax-2nd-edition/" target="_blank" rel="noopener"&gt;The Definitive Guide to DAX&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 16 Mar 2025 22:00:10 GMT</pubDate>
      <guid>https://community.fabric.microsoft.com/t5/DAX-Commands-and-Tips/DAX-Find-the-consecutive-negative-number-from-a-measure/m-p/4611996#M176521</guid>
      <dc:creator>OwenAuger</dc:creator>
      <dc:date>2025-03-16T22:00:10Z</dc:date>
    </item>
  </channel>
</rss>

