【问题标题】:SSRS Page Design (8 pictures per Page)SSRS 页面设计(每页 8 张图片)
【发布时间】:2018-04-10 10:36:42
【问题描述】:

美好的一天

下面的代码将“People”表中的某个人映射到“PeoplePicture”表中他/她的图片,并且运行良好:

SELECT DISTINCT
  People.person_id,
  People.ActivePassive,
  PeoplePicture.person_id,
  PeoplePicture.picture_id,
  PeoplePicture.Picture
  FROM People
  Right Join PeoplePicture
  On People.person_id = PeoplePicture.person_id
  WHERE People.ActivePassive = 'Active'
    And People.person_id In (@SelectePeople)​

现在我想设计一个单页的 SSRS 报告,以便我可以显示这些图片(每页最多 9 张图片或更少),如下图所示:

请帮助我设计页面。

【问题讨论】:

  • 看起来你已经有了设计。你在这之后真的是什么?
  • 你有什么问题?
  • 看起来 TS 不知道从哪里开始。我建议使用一个单元格的矩阵报告项目来动态设置两个轴上的单元格数。
  • 我使用列表吗?一个长方形?或者 ?基本上,我在 SSRS 中的第一步是什么?
  • Alex Peshik,能给我看一下屏幕截图吗?

标签: sql-server reporting-services


【解决方案1】:

请试试这个想法:

  1. 添加矩阵报告项(不是矩形也不是列表!),调整属性以显示边框样式和填充。
  2. 将 ColumnGroup 和 RowGroup 列添加到您的数据集中,它们将成为矩阵的基础。
  3. 使用轴上的组列和内部的值(图片路径、字符串描述、值等)

例子:

;with 
Picture as
(select 1000 as ID union all
select 1001 as ID union all
select 1002 as ID union all
select 1003 as ID union all
select 1004 as ID union all
select 1005 as ID union all
select 1006 as ID union all
select 1007 as ID union all
select 1008 as ID union all
select 1009 as ID union all
select 10010 as ID union all
select 10011 as ID union all
select 10012 as ID union all
select 10013 as ID union all
select 10014 as ID union all
select 10015 as ID union all
select 10016 as ID union all
select 10017 as ID union all
select 10018 as ID union all
select 10019 as ID union all
select 10020 as ID)

,DatasetPreparation as
(select
 row_number() over (order by ID) as Row_ID
,(row_number() over (order by ID)-1)%3 as ColumnGroup_ID
,(row_number() over (order by ID)-1)/3 as RowGroup_ID
,*
from Picture)

select * from DatasetPreparation

这是将按 3 列分组的简单随机 ID。

Row_ID、RowGroup_ID 和 ColumnGroup_ID 是 Matrix 项的“系统”列。

以这种方式将这些列添加到 Matrix:

不用担心 SUM。我们不会在行/列值中有交集(在数据集中准备了这个!)。您可以使用 First() 或任何其他方法。

最终结果是:

这是一个基本的想法,你只需要调整它。

并在 ColumnGroup_ID 和 RowGroup_ID 计算中使用任何值而不是 3 来创建多个列。

【讨论】:

    猜你喜欢
    • 2019-10-24
    • 2019-11-20
    • 1970-01-01
    • 2016-06-15
    • 1970-01-01
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 2016-09-19
    相关资源
    最近更新 更多