Skip to Content
avatar image
Former Member

OR between groups in Row-Restrictions, priority - Universe Design

Old School Univers Design, no SAP source, but plain Oracle

Two Questions here

1 - Priority in rowrestrictions

from documentation:

u201CYou can specify which restriction to apply to a user that belongs to multiple groups using a universe. For example a user belongs to two groups, Sales with a restriction to view 5000 rows of data, and Marketing to view 10000 rows. When the user refreshes a report, the restriction associated with the lowest level group is applied. In the example above, if the Sales group had order 1 and Marketing had order 2, the restriction from marketing (10000) would be used.u201D

I read in the documentation for Rowrestrictions, that the restriction on top of the order list will be the one kicking in, in case of a huser having two conflicting restrictions.

Does anyone have experience with this ?

Does it work ?

My experience is that its not working. Both rowrestrictions gets into the SQL with AND between as shown

AND ( FLEX_SEGMENT5.FLEX_VALUE IN (030,033,090,805,041,062,048)

AND FLEX_SEGMENT5.FLEX_VALUE IN (041,048,062)

the first line is my new restriction with priority 1,

the second line is the other restriction with priority 6

2 - OR between groups

there is a Restriction option in Manage Rowrestrictions , where you can spesify Rowrestriction Combinations using AND or OR.

I have not been able to have this working.

Anyone having a positive experience here ? Or have I misunderstood what this actually means.

I would expect

WHERE ( FLEX_SEGMENT5.FLEX_VALUE IN (030,033,090,805,041,062,048)

OR FLEX_SEGMENT5.FLEX_VALUE IN (041,048,062)

What I get is

( FLEX_SEGMENT5.FLEX_VALUE IN (030,033,090,805,041,062,048)

AND FLEX_SEGMENT5.FLEX_VALUE IN (041,048,062)

Is this a known bug ?

I have tried this in WEBI 3.1 and R2

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    avatar image
    Former Member
    Sep 07, 2010 at 11:07 AM

    Hi Ingrid,

    For me it works...

    I have two department groups in the CMC and I am member of both.

    I have two restrictionsets, one allows to see rows for one department, one for the other.

    (As in your case the same underlying table.column, but different values).

    I apply one restriction to department group A, the other to department group B.

    Now with the setting to only AND, i see nothing (the condition gets an AND).

    With the setting to OR between groups I get the OR and see data for both departments.

    My department groups don't have a hierarchical relationship.

    So it may be that you are experiencing this because of this relationship.

    Check that the groups are not in the same hierarchy...

    Hope this helps,

    Marianne

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member Former Member

      I think my problems are due to yet another group the users also is a part of.

      I guess the OR statement opens up the list for my LOV, so that wrong values might apply.

      I don't hva time to look further into this at the moment.

      Anyway I can see the OR statement in the SQL, so I mark question solved.

      Thanks for your repluies.

      Best Regards

      Ingrid Husby

  • Sep 07, 2010 at 12:33 PM

    Hello,

    In fact, Priority is used for universe overload where only one overload among several might apply. This is the case for connection overloads, table mappings..., but not for row restrictions.

    For row restrictions, you have AND/OR aggregation operators. In Universe design tool, you have the option to choose how Row restriction will aggregate (click the "cog" icon):

    + Combine row restrictions using AND

    + Combine row restrictions using AND within group hierarchies and OR between groups

    In the first case, all row restrictions that might apply to a user will be aggregated with AND operators.

    In the second case, row restrictions that are inherited are aggregated with AND operators and the ones coming the user groups a user belongs to are aggregated with OR operators.

    Ex with the following user groups organisation:

    G1

    G11 (G11 belongs to G1 group)

    G2

    G21 (G21 belongs to G2 group)

    and user U belongs to G11 and G21 user groups.

    Final row restriction that applies to the user U is:

    (G1 AND G11) OR (G2 AND G21)

    Hope it helps.

    Cheers

    ~~cas

    Add comment
    10|10000 characters needed characters exceeded