动态RDLC报表(二)

RDLC报表的结构

       要根据不同数据动态生成RDLC报表,我们需要先了解RDLC报表的结构。右键以记事本打开一个rdlc为后缀的文件,你就会我感到这世态炎凉是一个xml文件,里面包含不同的节点,简化后大致如下:

            <?xml version="1.0" encoding="utf-8"?>
            <Report xmlns:rd="http://schemas.microsoft.com/SQLServer/reporting/reportdesigner" xmlns="http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition">
            <DataSources>
               //数据源
            </DataSources>
            <DataSets>
              //DataSet数据表
            </DataSets>
            <Body>
            <ReportItems>
              //数据展示
            </ReportItems>
            <Style />
            <Height>1cm</Height>
            </Body>
            <Width>3cm</Width>
            <Page>
               <PageHeader>
                  //页眉
               </PageHeader>
               <PageFooter>
                  //页脚
               </PageFooter>
               <PageWidth>21.0cm</PageWidth>
               <PageHeight>29.7cm</PageHeight>
               <LeftMargin>0.0cm</LeftMargin>
               <RightMargin>0.0cm</RightMargin>
               <TopMargin>0.0cm</TopMargin>
               <BottomMargin>0.0cm</BottomMargin>
               <ColumnSpacing>0.13cm</ColumnSpacing>
               <Style />
            </Page>
            <EmbeddedImages>
              //图片
            </EmbeddedImages>
            <rd:ReportID>809f16cf-ea78-4469-bf43-965c4afe69d0</rd:ReportID>
            <rd:ReportUnitType>Cm</rd:ReportUnitType>
            </Report>

        我们从这个简化的RDLC报表结构中可以看到有DataSources数据源、DataSets数据表、Body主要数据显示、EmbeddedImages图片、页眉、页脚、页面属性,下面我们一个一个来分解这些节点。

1、DataSources数据源
       在常规的报表设计中需要先定义一个xsd为后缀的DataSet数据源文件,里面有DataSets数据表,同一个项目中可以有许多不同名称数据源,RDLC需要指定使用那一个数据源,这里是动态RDLC就简单一点,就用固定一个就好了,代码如下:

            <DataSources>
               <DataSource Name="DummyDataSource">
                   <ConnectionProperties>
                       <DataProvider>SQL</DataProvider>
                       <ConnectString />
                   </ConnectionProperties>
                   <rd:DataSourceID>3eecdab9-6b4b-4836-ad62-95e4aee65ea8</rd:DataSourceID>
               </DataSource>
            </DataSources>

 2、DataSets数据表
       这里就是数据的名称和结构,也就是数据表的名称和所包含的数据列(名称、数据类型),可以有多个数据表,但名称不能有相同,否则就会出错。这里的数据列的数据类型全部用字符System.String就可以了,以下是具体代码:

            <DataSets>
                 <DataSet Name="数据表名称">
                       <Field Name="字段名称">
                          <DataField>字段名称</DataField>
                          <rd:TypeName>System.String</rd:TypeName>
                       </Field>
                       ......
                       <Query>
                         <DataSourceName>DummyDataSource</DataSourceName>
                         <CommandText />
                       </Query>
                 </DataSet>
                 ......其它数据表......
            </DataSets>

3、Body数据显示

            <Body>
            <ReportItems>
              //数据展示
            </ReportItems>
            <Style />
            <Height>1cm</Height>
            </Body>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在WinForms中使用RDLC报表的教程如下: 1. 添加RDLC报表控件:在Visual Studio中打开你的WinForms项目,找到“工具箱”窗口,在其中找到“Reporting”部分,右键点击并选择“选择项”。在弹出的对话框中,勾选“Microsoft.ReportViewer.WinForms”并点击确定。然后将“ReportViewer”控件拖放到你的窗体上。 2. 创建RDLC报表:在解决方案资源管理器中右键点击你的项目,选择“添加”->“新建项”,然后选择“报表”模板。在弹出的对话框中选择“报表向导”,按照向导的指引来创建你的RDLC报表。 3. 设计RDLC报表:在报表设计器中,你可以定义报表的布局、数据源和数据绑定。你可以使用表格、图表、文本框等控件来展示数据。在设计完报表后,保存并关闭报表设计器。 4. 加载数据到RDLC报表:在你的WinForms窗体中,你可以通过代码来加载数据到RDLC报表中。首先,创建一个数据源,可以是DataTable或者其他集合类型。然后,创建一个ReportDataSource对象,并将数据源赋值给它的Value属性。最后,将ReportDataSource对象添加到ReportViewer控件的LocalReport对象的DataSources集合中。 5. 显示RDLC报表:在代码中,使用ReportViewer控件的Refresh方法来刷新报表数据,并调用RefreshReport方法来显示报表。 这些是使用RDLC报表的基本步骤,你可以根据具体需求进一步定制和扩展报表功能。希望对你有帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xgh815

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值