Quantcast
Channel: SQL Server Analysis Services Forum
Viewing all articles
Browse latest Browse all 2472

Dynamic Dimension Security on Parent-Child

$
0
0

Hi Everyone,

I am trying to apply dynamic security to a geography Parent-Child (PC) dimension.

The security requirements are that a given user with access to the dimension
can see the following:

i) the assigned node in the PC Dimension
ii) all the members below the assigned node in the PC hierarchy
iii) all the ancestors above the assigned node
iv) all other nodes at the same level of the assigned BUT not their children

I've applied the technique that is described By Chris Webb et al.
in the excellent book "Expert Cube Development with Microsoft SQL Server 2008 Analysis Services"
(Packt Publishing, 2009), however, that only meets the first three points above.

The current expression looks like this:

select
Generate(
 NonEmpty(
  [Geo].[Geo].[Geo].Members,
  ([Measures].[Geo User Count],
   StrToMember('[Geo User].[Geo User].[' + UserName() + ']')
  )
         ), {
             LinkMember(
                 [Geo].[Geo].CurrentMember,
                 [Geo].[Geos]
                       )
            }
)
 on Columns
from [SalesData];

[Geo] is the PC dimension to be secured
[Geo User] is a dimension containing the the users accessing the system
[Measures].[Geo User Count] is a measure from a bridge table containing
the the M:N relationship between Geography nodes and Users.

As I mentioned this meets criteria i) through iii) above but not iv).

Does anyone have any idea how to modify this expression in order to include the memebrs in iv)?

Keep in mind that PC dimensions behave somewhat differently due to the way they aggregate
data.

Any help here would be more than wecolme.

Regards,
Mario


Mario Techera all-BI GmbH Germany


Viewing all articles
Browse latest Browse all 2472

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>