I'm developing a tool which will help us to make analysis on cube data.
I have developed an OLAP tool using .NET similar to SSAS browse interface
where user drag & drop dimensions & measures, also the filter option is developed in the same manner.
I'm generating the MDX query based on the user selection.
What is the optimum way to create the where condition when user selects multiple
values/members from one dimension. OK, I figured you were trying to write a tool that generated MDX code.
If you're allowing someone to select (for instance) cities, and you want the cities to appear as rows....your "end result" would be something like this..
with set [SelectedCities] as { [Customer].[City].[New York], [Customer].[City].[Chicago] }
select { [measure1], [measure2] } on columns,
[SelectedCities] on rows
from [cube]
So you might take the approach of placing the selections in an MDX named set.
Now, named sets do have some restrictions in SSAS 2005 - however you should probably start from that approach.
Hope that helps....