如何为登录的不同用户显示或隐藏部分报告?
答案 0 :(得分:0)
此链接:
http://www-01.ibm.com/support/docview.wss?uid=swg21343986
显示了如何在Cognos中获得当前用户。您可以使用此宏语法来检索它:
#sq($account.defaultName)#
将其放在报表的布局表达式中,并验证它是否返回登录名。
下一步是可能能够在变量表达式中使用它,然后您可以在条件格式中使用它来隐藏或显示报表元素。
如果您不知道我在说什么,请参阅Report Studio手册并查找宏,布局表达式,变量,条件格式。
答案 1 :(得分:0)
您需要为不同的用户保存不同版本的报告。每个自定义布局都是自己的报告。
然后,您可以分配权限,以便用户只能看到适用于他们的报告。
例如,如果您有销售报表,并且市场营销部门想要在报表中添加额外的计算列,但没有其他部门希望看到它。使用“月度销售 - 营销”等新名称保存销售报告。添加新列。
现在,如果您还没有,请在Administration-> Security中创建一个名为'Marketing'的新角色。将营销用户分配给此角色。
在“每月销售 - 营销”报告中,如果您只想要营销来查看报告,则编辑报告的属性,转到权限,并为营销组提供“读取”,“执行”和“遍历” ”。从读取/执行权限中删除其他用户,现在只有市场营销人员和管理员才能看到特殊的营销报告。
答案 2 :(得分:0)
只要您尝试隐藏的对象具有名为RenderVariable的属性,您就可以将其连接到指定用户不可见/可见。
#sq($account.defaultName)#
这是一个检索当前用户名称的宏。if ([Current User] = 'Michael Jackson') then (1) else (0)
View Tabular Data
命令测试新查询。 (将鼠标悬停在“查询资源管理器”上以展开“查询”列表。右键单击刚刚创建的查询,然后选择“#34;查看表格数据"”DisplayWhenUserIsAuthorized_v
if ([Global].[IsAuthorized]) then (1) else (0)