Building an advanced security model
Sometimes we can get very sophisticated requirements about security and it will be impossible to create security using the default MicroStrategy security functionality. In this case, we can use MicroStrategy Object [User Login] - System Prompt. It returns a user login during the SQL generation of report. It gives us capabilities to hardcode security and build additional filters for the report. For example, this definition will filter country for the specific users:
ApplySimple("Case when #0 IN ('lsmith','bcassidy','nzhou','mdiploma') Then 'Canada' Else '%' End",? [User Login])
OR
ApplySimple("Case when #0 IN ('lsmith','bcassidy','nzhou','mdiploma') Then 'Australia' Else '%' End",? [User Login])
Another way to do it is to build a table in the data warehouse and set up all security and access there in order to join...