FIX: The DAX query with filter returns incorrect result after you run a DAX query without any filters in SSAS 2012 or in SSAS 2014

Applies to: SQL Server 2012 Analysis Services

Symptoms


Assume that you use Microsoft SQL Server 2012 Analysis Service (SSAS 2012) or SSAS 2014 in Unified Dimension Model (UDM) mode. When you execute a Data Analysis Expressions (DAX) query with filter on members after you have run a DAX query without any filters, the query returns incorrect result. For example: You run the following DAX query first against Adventureworks cube:
EVALUATE ROW("Internet_Gross_Profit", 'Internet Sales'[Internet Gross Profit])
And then you run the following DAX query after the previous query:
EVALUATE
CALCULATETABLE(
ROW(
"Internet_Gross_Profit", 'Internet Sales'[Internet Gross Profit]
),
KEEPFILTERS(
FILTER(
KEEPFILTERS(VALUES('Date'[Month of Year.Key0])),
OR(
OR('Date'[Month of Year.Key0] = 9, 'Date'[Month of Year.Key0] = 8),
'Date'[Month of Year.Key0] = 5
))))
It returns the same result as the first query. This is incorrect.

Resolution


The issue was first fixed in the following cumulative update of SQL Server.

Cumulative Update 4 for SQL Server 2014

Cumulative Update 2 for SQL Server 2012 SP2

Cumulative Update 11 for SQL Server 2012 SP1

Status


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.