Hi Paul,
Many thanks for your detailed post again.
Well spotted, my level naming was wrong - I just tried things out because it was not working how I wanted it.
I used the following now (including the part you suggested but extended with the CONDITION statement)
{[DIM_PERIOD].defaultmember}
{[DIM_KPI].defaultmember}
{[DIM_SALES].defaultmember}
Ancestors(Head(Filter([DIM_SALES].AllMembers,[DIM_SALES].CurrentMember.Level.Name = 'SALESPERSON_ID' and [DIM_SALES].CurrentMember.Name = '040347788')).Item(0))
Without the CONDITIONS for the other dimension I get the usual error: Formula error - Access to member is not allowed
I dont see how it can work for you without those.
When I use this MDX filter in WRS (via an Information Map) and I only have the Period and KPI dimension selected as data to display it works
fine but as soon as I add the DIM_SALES dimension the page refreshes and I can see a message tellingm me that for this table no values have been returned.
I have not spotted a slicer item on my OLAP View in EG 4.2 the only way to create a slice is doing a right-click on the cube and selecting "Create Slice".
The following window does not allow a drill down by clicking on a table row.
Your guess is right, at some point I am also going to want to have filters for management level users.
You said that the EG4.2 generated MDX queries might be of use later.
In EG4.2 I have opened the cube, added SALESPERSON_ID to the rows out of the memebr/level selection panel between the left hand process flow
view and the right hand OLAP Query result. This resulted in all the bottom level SALESPERSON_ID's being displayed (around 3500).
When I then click on one and select add SALESPERSON_ID to filter, then specify that the member caption should ="040347788" and confirm it then takes
a long time for EG4.2 to process this step. I leave it running during the night and see tomorrow in hope
that this generated MDX query will be usefull.
Here is th result, its seems the "Generate" was taking the longest, generating a set of all bottom level members:
Filter(Generate({ [DIM_SALES].[SALESPERSON_ID].AllMembers }, Ancestors([DIM_SALES].[DIM_SALES].CurrentMember, [DIM_SALES].[SALESPERSON_ID])), kupcase([DIM_SALES].[DIM_SALES].CurrentMember.Properties("CAPTION")) = kupcase("040347788"))).Count > 0)))
Finally, Paul, I tried it with your query again and I must have made a mistake last time because this time it wors perfectly:
Ancestors(Head(Filter([DIM_SALES].AllMembers,[DIM_SALES].CurrentMember.Level.Name = 'SALESPERSON_ID' and [DIM_SALES].CurrentMember.Name = 'SUB::SAS.UserId')).Item(0))
Thanks a lot!
Regards,
Bob
Message was edited by: metalray