是否可以为pentaho中的用户显示按字段(例如位置)过滤的报告?
例如:
UserA manages RegionA
UserB manages RegionB
UserAB manages RegionA and RegionB
当用户登录系统时,他应该看到仅显示他们管理的区域的报告。
为所有用户显示相同的报告格式,但每个用户的内容(或查询过滤器)不同。
如果可以的话,如何实现?
感谢您的帮助。
最佳答案
是的;执行此操作的正确方法是使用 session 启动操作。这些 xaction 允许您设置 session 变量,然后您可以在报告中访问这些变量。在这种情况下,您可以定义一个位置并在查询中使用它。
http://wiki.pentaho.com/display/ServerDoc2x/Using+System+Actions+to+Control+Data+Access
或者,您也可以通过 session 变量访问用户名,因此您始终可以将逻辑放入查询中。但 session 启动操作的好处是逻辑包含在一个位置,以防需要更改。
在您的情况下,因为这是 MDX(我刚刚从标签中注意到),您必须生成一个看起来像一组位置的字符串。
关于Pentaho 中的授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16336668/