SYMPTOM:
Incorrect SQL could be generated for a user with multiple security filters assigned on a project. This would be noticed only when the user attempts to execute a Freeform SQL report which incorporates a Security Filter condition that would apply to the user. For the steps on how to add a condition defined by a security filter, refer to the following Strategy Knowledge Base technical note:
KB13318 - How to use a security filter with a Freeform SQL report in Strategy Developer 9.4.x to 10.x
STEPS TO REPRODUCE:
The following steps indicate how this issue can be reproduced with the Strategy Tutorial project:



CAUSE:
This behaviour is by design. Please see the steps explained in the "Action" section below that explain how the correct SQL can be generated to handle the different cases.
ACTION:
The correct position for the replacement string should be in the text box at the bottom of the Security Filter dialog box. This is the replacement string that will take effect if the security filter is applied, and will be removed from the SQL if the user does not have a Security filter for the project.

With this modification in place users should see the correct SQL as follows:
select a11.YEAR_ID YEAR_ID
from LU_YEAR a11
where a11.YEAR_ID > 2000
AND (a11.YEAR_ID = 2015
or a11.YEAR_ID in (2014))
Article Reference Number: KB99008