Forum Discussion

Gjakova's avatar
Gjakova
Post Patron
5 years ago
Solved

OR statement with two different columns

Hi there, 

I have the following scenario:

 

For the measure Historical Overdue I need a measure that counts all values for which the Due Date was exceeded at that moment and which were not yet set (fully paid and written off), the latter can be seen from the closed date. So the date> Due Date <Closed Date, if the Closed date is 1-1-1900 then the post is still open and therefore only date> Due date

 

My measure looks like this:

 

Historical Overdue Receivable =
VAR CurrentDate =
        MAX ( 'Dimension Date'[DateValue] )
VAR Overdue =
        CALCULATE (
              SUM ( 'Fact Receivable'[Receivable Amount EUR] ),
              ALL ( 'Dimension Date'[DateValue] ),
              'Dimension Date'[DateValue] <= CurrentDate,
              'Fact Receivable'[Receivable Due Date] > CurrentDate
                      || YEAR ( 'Fact Receivable'[Receivable Closed Date] ) = 1900
              ,USERELATIONSHIP('Dimension Date'[DateValue], 'Fact Receivable'[Receivable Due Date])
         )
RETURN
          Overdue
 
As you can see I'm using Due Date and Closed Date and I get the following error, does someone know an alternative?
 
Error: The expression contains multiple columns, but only a single column can be used in a True/False expression that is used as a table filter expression.

Hope to hear from you! Thanks in advance.
  • Please try this instead

     

    Historical Overdue Receivable =
    VAR CurrentDate =
        MAX ( 'Dimension Date'[DateValue] )
    VAR Overdue =
        CALCULATE (
            SUM ( 'Fact Receivable'[Receivable Amount EUR] ),
            ALL ( 'Dimension Date'[DateValue] ),
            'Dimension Date'[DateValue] <= CurrentDate,
            FILTER (
                ALL (
                    'Fact Receivable'[Receivable Due Date],
                    'Fact Receivable'[Receivable Closed Date]
                ),
                'Fact Receivable'[Receivable Due Date] > CurrentDate
                    || YEAR ( 'Fact Receivable'[Receivable Closed Date] ) = 1900
            ),
            USERELATIONSHIP ( 'Dimension Date'[DateValue], 'Fact Receivable'[Receivable Due Date] )
        )
    RETURN
        Overdue

     

    Pat

     

1 Reply

  • mahoneypat's avatar
    mahoneypat
    Microsoft Employee

    Please try this instead

     

    Historical Overdue Receivable =
    VAR CurrentDate =
        MAX ( 'Dimension Date'[DateValue] )
    VAR Overdue =
        CALCULATE (
            SUM ( 'Fact Receivable'[Receivable Amount EUR] ),
            ALL ( 'Dimension Date'[DateValue] ),
            'Dimension Date'[DateValue] <= CurrentDate,
            FILTER (
                ALL (
                    'Fact Receivable'[Receivable Due Date],
                    'Fact Receivable'[Receivable Closed Date]
                ),
                'Fact Receivable'[Receivable Due Date] > CurrentDate
                    || YEAR ( 'Fact Receivable'[Receivable Closed Date] ) = 1900
            ),
            USERELATIONSHIP ( 'Dimension Date'[DateValue], 'Fact Receivable'[Receivable Due Date] )
        )
    RETURN
        Overdue

     

    Pat