我有许多具有特定级别的权限的配置文件,这些权限枚举并存储在SQL中。我想在SSRS内创建一个报告,其中显示了表格左侧的所有权限以及顶部的所有配置文件,并带有X或具有适当权限的配置文件的某些指示。这些信息存储在三个表中。将SQL SSRS映射结果映射到矩阵
表1:概况 - 给出了相关的回GUID
表2中的配置文件的名称:Profile_Priv - 提供与批准文号(其实只是授予个人资料权限的配置文件的GUID出现在此表)
表3:权限 - 将权限号码关联到权限的名称。
我有一个查询,将拉的权限分配给配置文件,我可以很容易地填充空白矩阵的所有可能的权限,但嫁给两个逃离我。这是我迄今为止在SSRS中所拥有的。我在SSRS中传递了一个名为ProfileName的参数,允许查询显示该特定报告需要的配置文件。
Select Privileges.Description, Profiles.Name
FROM Privileges LEFT OUTER JOIN
Profile_Priv ON Privileges.ID = Profile_Priv.ID INNER JOIN
Profiles ON Profile_Priv.PID = Profiles.PID
WHERE (Profiles.Name = @ProfileName)
ORDER BY Privileges.ID
的数据变换像转向价值是这不填充任何信息的表像我预料到,也不会做任何类型的。
任何反馈或协助,非常感谢。
加入1:
即使将其更改为一个完整的加入,做一个个人档案只返回权限,具体的配置文件了。
我寻找创造的是这样一份报告:
Profile 1 Profile 2 Profile 3 Profile 4
Permission 1 X X
Permission 2 X X X X
Permission 3 X X
Permission 4
目前我得到这个使用上面的例子,如果我在寻找档案2:
Profile 2
Permission 2 X
Permission 3 X
您需要添加您当前正在获取的数据的示例,以及您希望它在报告中显示的方式。 –
为了说明的目的添加了其他信息。 – CPickler
您正在过滤**配置文件2 **,因此权限** 2 **和** 3 **是唯一预期的。如果您希望全部在Matrix中,则应删除WHERE子句,否则您的过滤器将只允许表中选定的配置文件。 –