在RDLC中制作“带状”报告的最简单方法是什么?

时间:2012-11-17 01:04:00

标签: reporting-services reportviewer rdlc rdl report-viewer2010

好吧,我可能一直在谷歌搜索错误的搜索条件,但我找不到如何使用RDLC制作MS-Access风格的带状报告(这是Visual Studio 2010中的残缺报告设计者,而不是BIDS)带状我是指带有组头和子组头的报告 - 不是交替的颜色带。

我有一个带有List,Tablix和Matrix的工具箱,它们的行为都相同 - 我不断得到看起来像MS-Access CrossTabs的东西。我可以得到这个:

Country Population    Date
---------------------------
Spain 1 million     1982
Spain 1.1 million   1983
China 1 billion     1982
China 1.2 billion   1983

我还可以在行上获取国家/地区,在列上显示年份并在中心弹出,例如交叉表,但我不想要交叉表。此外,我不想要行标题,除了相同的单元格合并之外,它们与上面的内容完全相同。

但我无法得到这个:

---------------
Spain 
---------------
Population     Date
1 million     1982
1.1 million     1983
---------------
China
---------------
Population    Date
1 billion     1982
1.2 billion   1983

甚至可以使用RDLC吗?

更多信息 Reporting Services是Microsoft发布的服务器产品,随客户端调用Business Intelligence Development,简称BIDS。前者使用RDL,后者使用RDL(RDL是基于XML的报告语言)。我没有其中任何一个。

我有ReportViewer,它是一个可以读取RDLC(RDL的残缺子集)的ASP.NET控件,我有Visual Studio 2010,它有一个残缺的BIDS版本。 Visual Studio 2010中的工具箱有一个列表,一个Tablix和一个Matrix,它们看起来都是具有不同默认启动属性的相同控件。在MS-Access中创建名为Crosstabs的内容很容易,但是试错会产生一个带状报告,该组报告除了产生任何东西之外。

1 个答案:

答案 0 :(得分:7)

只要我理解了所有内容,您所要求的是RDLC格式可以实现的,我执行以下步骤来获得您想要的输出:

  1. 首先,我使用您在上面提供的数据示例创建了样本数据。

    CREATE TABLE [dbo].[SampleTable](
        [Country] [nchar](10) NULL,
        [Population] [nchar](20) NULL,
        [Date] [nchar](10) NULL
    ) ON [PRIMARY]
    
    GO
    
    INSERT INTO [SampleTable]([Country],[Population],[Date])
    SELECT 'Spain', '1 million', '1982'
    UNION ALL SELECT 'Spain', '1.1 million',   '1983'
    UNION ALL SELECT 'China', '1 billion',     '1982'
    UNION ALL SELECT 'China', '1.2 billion',   '1983'
    
    GO
    
  2. 接下来,我创建了一个新的WindowsFormsApplication并添加了一个新项目“Report”(不是报告向导)

  3. 从工具箱中我添加了一个新表,然后按向导连接到之前创建的示例数据

  4. 在表格中添加了人口和数据并删除了额外的列,所以左边的内容看起来像这样:

    Details Only - Population and Data

  5. 通过右键单击行组下的(详细信息)添加组,添加组>家长小组......

    对话框 - Tablix组:分组依据:国家/地区,勾选“添加组标题”

  6. 现在删除新创建的列,确保选择仅删除列而不是组

  7. 删除列标题行并在空白行中添加“国家/地区”字段(单击悬停在字段上时显示的表格图标),也可以通过右键单击合并单元格

    < / LI>
  8. 通过右键单击(详细信息)行组,添加总计&gt;,在两行之间添加新行前

  9. 在新行中添加行标题,应保留以下内容:

    Final Solution - Layout

    Final Solution - Groups

  10. 切换到Form.cs [Design],从ToolBox添加ReportViewer,选择新创建的报告

  11. 最终解决方案的预览如下

    Final Solution - Preview

  12. 接下来的步骤是更新报告的格式