4 Replies Latest reply on Oct 19, 2018 3:55 PM by Rafal Wardas

    Row level security over calculated field.

    Rafal Wardas

      Hello.

       

      It looks like I'm reaching limitations of Tableau with row level security. Basically I have hierarchical structure of companies, which can be browsed by users with some restrictions.

       

      For example structure looks like:

       

      2018-10-19 14_25_57-Window.png

       

      where users assigned to company_id can browser company_id and child nodes. To avoid M:N relation I'm using string concatenation with list of companies assigned to user:

       

      2018-10-19 14_27_33-Window.png

       

      I use two extracts with data blending to avoid multiplication, in schema with data I use additional meta-data column with call of  USER_NAME() function, which returns

      name of user, later in schema with data I use reference to 'GROUPS' and search for substring of COMPANY_ID from fiscal data:

       

      BLENDED_ACCESS_GROUP = MAX([USERS (USERS_ACCESS)].[GROUPS])

       

      GOT_ACCESS =  STR(CONTAINS(([BLENDED_ACCESS_GROUPS]),ATTR(STR([COMPANY_ID]))))

       

       

      2018-10-19 14_31_58-Window.png

       

      When I use GOT_ACCESS as a filter in sheet it works, but I'm unable to set this filter on server side as "USER FILTER" . Is there any workaround for that ?

       

      Thanks.

      R.