Reporting services 如何在报告中换行和/或在多栏报告中换行?

Reporting services 如何在报告中换行和/或在多栏报告中换行?,reporting-services,Reporting Services,我有一个报告,其中我已将Columns属性指定为3 我希望来自单个查询的数据分布在这些列中 然而,当我打印报告时,我只得到一个跨多个页面的列,直到数据行用完为止 我如何告诉rs我希望数据包装到下两列中 更新:好的,在technet上找到了一个可以更好地解释多栏(如时事通讯样式)的链接: 多栏、时事通讯式报告 向下显示多个报表数据 相邻的列。时事通讯的风格 布局适用于整个报告。 定义多个列时 在报表中,报表设计器 计算中列的宽度 报告,报告的宽度, 和之间的空间宽度 基于列数的列 柱。然后,它会显

我有一个报告,其中我已将Columns属性指定为3

我希望来自单个查询的数据分布在这些列中

然而,当我打印报告时,我只得到一个跨多个页面的列,直到数据行用完为止

我如何告诉rs我希望数据包装到下两列中

更新:好的,在technet上找到了一个可以更好地解释多栏(如时事通讯样式)的链接:

多栏、时事通讯式报告 向下显示多个报表数据 相邻的列。时事通讯的风格 布局适用于整个报告。 定义多个列时 在报表中,报表设计器 计算中列的宽度 报告,报告的宽度, 和之间的空间宽度 基于列数的列 柱。然后,它会显示一个简化的 设计曲面,以便您可以放置 报告报告中将显示的项目 放在柱子里。请注意 整个报告的布局必须是 放置在简化的设计图面上。 显示其他列,以便 您可以验证 您定义的列将适合页面 尺寸。您可以调整页面 尺寸、填充和边距更适合 页面上的列

只有PDF和图像渲染器支持 时事通讯式报告


我还没有完全弄清楚如何包装这个专栏……但我将在周一进一步研究它。

我通过以下方式解决了我的问题:

  • 在我的子报表中放入3个Tablix
  • 在我的SQL结果中添加计数聚合
  • 在Tablix过滤器中进行%计算
  • 例如,Tablix one的过滤公式如下:

    =IIF(Fields!MaxRowNumber.Value <= 10, 10, Fields!MaxRowNumber.Value * .4)
    

    =IIF(Fields!MaxRowNumber.Value因此,一种方法是使用多个tablix和一个过滤器来检查行数,并相应地在每个表中显示特定记录

    另一种方法称为时事通讯样式报告。只有将报告导出为PDF或图像时,才会保留此格式。只有在Visual Studio的“预览”选项卡上选择“打印布局”时,才能预览此格式。以下是一个示例:

  • 使用以下数据集创建新报告:
    SELECT ID,NAME FROM TABLENAME
  • 向报告中添加新表,并选择ID和名称作为列
  • 单击tablix并按F4编辑tablix属性。在属性窗口中,更改大小-将宽度设置为2in
  • 单击报告页面边界外的报告区域,然后按F4键编辑报告属性。在属性窗口中,将列值更改为3,将列间距值更改为0.1
  • 在报告滚动到右侧时,您会注意到有2个新列(因此报告上总共有3列-因为您在上面的步骤4中选择了3列)。现在单击第2列开始处的边距,将其进一步向左拉,使其尽可能靠近第1列。这只是为了减少对巨大页面大小的需要
  • 右键单击报告页面边界外的报告区域并选择报告属性。更改页面大小-将宽度设置为10英寸
  • 预览报表。现在选择“打印布局”选项卡以查看结果。仅当报表导出为PDF或图像时,才会保留此格式

  • 如第5点和第6点所述-由于报告正文流入多个列,因此必须确保页面大小至少等于->([原始报告正文大小乘以列数]+所有列间距值)。否则它会看起来很乱。

    我尝试了类似的方法,但右侧的行向上爬,因此它们出现在左侧列中相应行的上方。(SSRS2008 R2,如果相关)@SarekOfVulcan可以看看下面的文章,它更详细地解释了如何在不使用仅PDF设置的情况下实现对列的包装: