您好我想知道在这种情况下是否有分割长列值的方法我使用SSRS将带有产品ID数量的不同值与类别中的SSRS中的矩阵/数据透视表一起获取。问题在于,不同类别的数量使我们说报告看起来很漂亮是一场噩梦。有没有动态的方法来分割10个组中的列,以使表看起来更好,更容易阅读。我想在运算符中使用值列表,但这意味着每次添加新类别时都要管理数据。有没有一种动态的方式以尽可能最好的方式呈现数据?有135个不同的类别值
此外,如果有人有任何想法,我愿意接受使报告更好的建议。我是SSRS的新手并试图掌握它。
这是我的问题的一个例子
答案 0 :(得分:0)
答案 1 :(得分:0)
您的列名是否在您在上述评论中注明的SubCat字段下的数据库中返回?如果是这样,我想你的数据集看起来像这样
Subcat | Logno
---------+---------------
SubCatA | 34
SubCatB | 65
SubCatC | 120
SubCatD | 8
SubCatE | 19
您可以使用Row_Number()函数对此进行编辑,以便还返回每个类别的索引。添加字段
ROW_NUMBER() OVER (ORDER BY SubCat ASC) AS ColID
给你的查询。这将导致以下结果。
Subcat | LogNo | ColID
-----------+--------------+----------
SubCatA | 34 | 1
SubCatB | 65 | 2
SubCatC | 120 | 3
SubCatD | 8 | 4
SubCatE | 19 | 5
现在每个列都有一个数字标识符,您可以在其上执行某些逻辑,以便在页面上很好地排列。
此解决方案涉及Tablix,嵌套在嵌套在Matrix内的Matrix内,如下所示
首先创建一个Matrix(Matrix1),并将其数据源设置为您的数据集。将行组属性设置为对以下表达式进行分组,其中“4”是您希望水平显示的列数。
=CInt(Floor((Fields!ColID.Value - 1) / 4))
然后在矩阵的数据部分(右下角)插入一个矩形,并在此插入一个新矩阵(矩阵2)。删除最左边的行。将列标题设置为Column Name SubCat。这将自动将列分组设置为SubCat。
最后,在Matrix 2的数据部分中添加一个新的矩形并在其上添加一个Tablix。删除标题行,并将其设置为仅一列宽。将数据设置为您要显示的信息,即LogNo。
最后,删除Matrix 1中的Leftmost和Topmost行/列,使其看起来更整洁(注意仅删除列行!不是关联的组!)
然后,当报告运行时,它应该类似于以下内容。请注意我的示例SubCat = ColName和LogNo = NumItems,并且每个SubCat都有多个值。
希望你觉得这很有帮助。如果没有,请要求澄清。