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 /en-us/help/2999197
Cumulative Update 2 for SQL Server 2012 SP2 /en-us/help/2983175
Cumulative Update 11 for SQL Server 2012 SP1 /en-us/help/2975396
Each new cumulative update for SQL Server contains all the hotfixes and all the security fixes that were included with the previous cumulative update. Check out the latest cumulative updates for SQL Server:
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.