[Mondrian] Re: slicer/filter..

Ati Rosselet ati.rosselet at gmail.com
Mon Apr 11 17:11:44 EDT 2011


Narrowing it down.   The problem is definitely with the role... am I
using it wrong?
This does not seem to be working logically I want no access to any BU
without a specific grant to a child member, and
then that [BUX] should be automatically set access="custom" with only
the specified Children visible.

        <CubeGrant cube="FI" access="all">
                <HierarchyGrant hierarchy="[ProfitCenter]"
access="custom" rollupPolicy="partial">
                        <MemberGrant member="[ProfitCenter].[All
ProfitCenters]" access="none"/>
                        <MemberGrant
member="[ProfitCenter].[BU2].[H2001]" access="all"/>
                        <MemberGrant
member="[ProfitCenter].[BU1].[H1004]" access="all"/>
                </HierarchyGrant>
        </CubeGrant>

This, however works - setting the [BU] levels to all and then
specifically revoking access to undesired children.

        <CubeGrant cube="FI" access="all">
                <HierarchyGrant hierarchy="[ProfitCenter]"
access="custom" rollupPolicy="partial">
                        <MemberGrant member="[ProfitCenter].[All
ProfitCenters]" access="none"/>
                        <MemberGrant member="[ProfitCenter].[BU2]"
access="all"/>
                        <MemberGrant
member="[ProfitCenter].[BU2].[H2002]" access="none"/>
                        <MemberGrant member="[ProfitCenter].[BU1]"
access="all"/>
                        <MemberGrant
member="[ProfitCenter].[BU1].[H1001]" access="none"/>
                        <MemberGrant
member="[ProfitCenter].[BU1].[H1002]" access="none"/>
                        <MemberGrant
member="[ProfitCenter].[BU1].[H1003]" access="none"/>
                </HierarchyGrant>
        </CubeGrant>

What is the difference between these 2 examples - they should
logically have the same results right?  I have many left nodes, so
specifying each
"no access" will give me a really large role :(     I think there is a
bug somewhere since the first role seems to work just fine, except if
{[BU1],[BU2]} are on the slicer with an MDX such as:

select {[Measures].[amount]} ON COLUMNS,
  {[Account].[Primary cost].[01_Base salary].[70000]} ON ROWS
from [FI]
where {[ProfitCenter].[BU1], [ProfitCenter].[BU2]}

the resulting cell is the correct result X
count([BU2].VisibleChildren)  (yes.. it counts the visible children of
the last element if it is custom access - I'm guessing the
LimitedRolupMember's expression is somehow involved??)

I'd be happy to try to duplicate the problem with the
cmdRunner/Foodmart, but I can't see how I can specify a role there?
Is there a way to do this??
Cheers/Gnite

On Mon, Apr 11, 2011 at 8:39 PM, Ati Rosselet <ati.rosselet at gmail.com> wrote:
> Using cmdRunner it turns out that the problem is somewhere else
> completely.  If I remove the role I had assigned to the user
> (basically grant all. explicitly), and just use an 'allaccess' role,
> then the problem goes away, so it's got something to do with the role
> based permissions again... although how that could result in MULTIPLES
> being returned rather than less than expected... no idea yet...   will
> write again if I figure something out...
>
> Cheers
> Ati
>
> On Mon, Apr 11, 2011 at 4:24 PM, Ati Rosselet <ati.rosselet at gmail.com> wrote:
>> Hi, I just ran into the problem MONDRIAN-791, and applied the patch..
>> seems to work fine thankfully, but this was just a side problem.
>> The main problem is with the values returned when the last filter
>> element (when more than one member) have more than 1 child. E.g.
>> When I select a filter such as:
>>
>> where Crossjoin({[Measures].[amount_inv_EUR]}, {[ProfitCenter].[BU2],
>> [ProfitCenter].[BU3]})
>>
>> Where BU2 has 2 children and BU3 has 12, then the resulting cells are 12x value
>> Reversing the order {[ProfitCenter].[BU3], [ProfitCenter].[BU2]}
>> gives 2x values
>> Testing with another (BU4) with 3 Children gives me values 3x expected.
>> If I select just the children , even if many, the results are correct
>> (I'm assuming since each is 1 element and not a group of elements).
>>
>> This seems to indicate to me something wrong with either the creation
>> of the set in the filter? or application of the filter ....
>>
>> Any ideas, or even on where this might be happening?
>>
>> Cheers.
>>
>



More information about the Mondrian mailing list