2016-03-22 9 views
0

Ich habe eine Anforderung, wo ich Spalte aus mehreren Tabellen auswerten und erforderliche Datensätze aus meiner Faktentabelle in meinem SSAS-Tabellenmodell auswählen muss.Mehrere Filter in DAX mit OR Schlüsselwort

ZB: Pick-Records aus Facta wo:

('DimA'[DimA Group] = "Contract" AND'DimB'[DimB Group] = "Contract") OR ('DimA'[DimA Group] = "Commercial", 'DimB'[DimB Group] = "Commercial") 

Unterhalb der DAX ist haben:

MeasureA := 
CALCULATE(SUM('FactA'[Amount Single]),filter(('DimA'[DimA Group] = "Contract", 'DimB'[DimB Group] = "Contract"), 
('DimA'[DimA Group] = "Commercial", 'DimB'[DimB Group] = "Commercial"),)) 

Dieser Fehler ich erhalte, ist Operator oder den Ausdruck '()' wird nicht unterstützt, in der aktuelle Kontext.

Jede Hilfe ist viel

geschätzt diese

Antwort

1

Versuchen:

MeasureA := 
CALCULATE(
    SUM('FactA'[Amount Single]), 
    FILTER(
    CROSSJOIN(VALUES('DimA'[DimA Group]), VALUES('DimB[DimB Group])), 
    ('DimA'[DimA Group] = "Contract" && 'DimB'[DimB Group] = "Contract") 
    || ('DimA'[DimA Group] = "Commercial" && 'DimB'[DimB Group] = "Commercial") 
) 
) 

Mehr zu diesem Muster here beschrieben.