EducationSoftwareStrategy.com
StrategyCommunity

Knowledge Base

Product

Community

Knowledge Base

TopicsBrowse ArticlesDeveloper Zone

Product

Download SoftwareProduct DocumentationSecurity Hub

Education

Tutorial VideosSolution GalleryEducation courses

Community

GuidelinesGrandmastersEvents
x_social-icon_white.svglinkedin_social-icon_white.svg
Strategy logoCommunity

© Strategy Inc. All Rights Reserved.

LegalTerms of UsePrivacy Policy
  1. Home
  2. Topics

KB440880: No Data returned for this view is shown when using intersect and two security filters on the same attribute


Community Admin

• Strategy


This Knowledge base article describes how no data is returned when using intersect and two security filters on the same attribute

SYMPTOM
In projects set to use intersect (AND) security filters may see no data presented when logging in as a user who has two security filters on the same attribute.
STEPS TO REPRODUCE
In Strategy tutorial:
1. Enter project configuration>securityfilter>general and select intersect

ka04W000000OaxDQAS_0EM44000000WP91.png

2. Create a new user group and add a security filter for Northwest security filter

ka04W000000OaxDQAS_0EM44000000WP96.png

3. Create a new user group and add a security filter for South security filter

ka04W000000OaxDQAS_0EM44000000WP9L.png

4. Create a report in web with profit and region

ka04W000000OaxDQAS_0EM44000000WP9B.png

5. When running the report no data is returned:

ka04W000000OaxDQAS_0EM44000000WP9G.png

CAUSE
While using "Union (OR) Security Filters on related attributes, intersect (AND) Security Filters on unrelated attributes" option, they get the following SQL, which is not equivalent to the above:
SELECT SALES
FROM FACT
WHERE REGION IN 'EMEA'
OR (REGION IN 'APAC')
AND STORETYPE IN '1')
In circumstances that the following SQL is desired:
SELECT SALES
FROM FACT
WHERE (REGION IN 'EMEA'
OR REGION IN 'APAC')
AND STORETYPE IN '1'
Using "Union (OR) Security Filters on related attributes, intersect (AND) Security Filters on unrelated attributes" option, the following SQL, which is not equivalent to the above is acheived:
SELECT SALES
FROM FACT
WHERE REGION IN 'EMEA'
OR (REGION IN 'APAC')
AND STORETYPE IN '1')
Unfortunately, there is no OOTB way to get the SQL they want and they would need to redesign the security filter to achieve this SQL.
WORKAROUND 
Redesign the user group to have 3 groups with following security filter definition:
Group1 = SF1 (REGION IN 'EMEA')
Group2 = SF2 (REGION IN 'APAC')
Group3 = SF3 (STORETYPE IN '1')
Attach the user to all the 3 groups and keep  "Union (OR) Security Filters on related attributes, intersect (AND) Security Filters on unrelated attributes" option. This way, the desired SQL should be achieved:
SELECT SALES
FROM FACT
WHERE (REGION IN 'EMEA'
OR REGION IN 'APAC')
AND STORETYPE IN '1'
ACTION
This issue was reviewed by our Technology team for feasibility and will not be scoped for a code fix in any upcoming Strategy release.


Comment

0 comments

Details

Knowledge Article

Published:

May 24, 2018

Last Updated:

December 27, 2018