Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Conditional filter within calculate function?

I am trying to create a measure that has a conditional filter within the Calculate function.    Here is a stripped down version of what I am trying to do.   PersonaPortfolio = a table that is fil...
  • AlexisOlson's avatar
    AlexisOlson
    4 years ago

    Yeah, I think you can refactor it to combine FilterA and IgnoreA like this:

     

    Test =
    VAR A = CALCULATE ( [...] )
    VAR B = CALCULATE ( [...] )
    VAR C = CALCULATE ( [...] )
    VAR D = CALCULATE ( [...] )
    VAR FilterA = FILTER ( fact, IF ( ISEMPTY ( A ), NOT fact[A] IN A, fact[A] IN A ) )
    VAR FilterB = FILTER ( fact, IF ( ISEMPTY ( B ), NOT fact[B] IN B, fact[B] IN B ) )
    VAR FilterC = FILTER ( fact, IF ( ISEMPTY ( C ), NOT fact[C] IN C, fact[C] IN C ) )
    VAR FilterD = FILTER ( fact, IF ( ISEMPTY ( D ), NOT fact[D] IN D, fact[D] IN D ) )
    RETURN
        CALCULATE ( [Delta-P], FilterA, FilterB, FilterC, FilterD )