1.RDLC 设计页面,拖入table或者矩形

2.右击表格或者矩形单元格,插入--子报表

3.输入名称和将此报表用作子报表

名称:显示在设计页面上的,仅作观看作用

将此报表用作子报表:填写目录下的需要作为子报表的RDLC文件的文件名称(XXX.RDLC),只需要文件名称不需要.RDLC后缀名称。

4.右击子报表单元格,子报表属性--参数,添加需要传给子报表的参数信息

5.打开子报表设计页面的报表属性,右击参数,添加参数,输入第4步填写的参数名称

6.

 viewer.LocalReport.SubreportProcessing += new SubreportProcessingEventHandler(LocalReport_SubreportProcessing);
//主函数添加
void LocalReport_SubreportProcessing(object sender, Microsoft.Reporting.WebForms.SubreportProcessingEventArgs e)
{
var errCode = ;
try
{
if (e.DataSourceNames[] == "dsJcxh")
//这里引号里替换成子报表的数据集名称
{
errCode = ;
e.DataSources.Add(new ReportDataSource("dsJcxh", GetSupervisionSamplingDetailData(e)));
//如果只有1个子报表ELSE后面就不需要了,3个以上 多次IF判断就可以了
}
else
{
errCode = ;
e.DataSources.Add(new ReportDataSource("dsUr", GetUseRegisterData(e)));
}
}
catch (Exception ex)
{
Response.Write(ex.Message + ":" + errCode);
}
}
public List<StatisticalLedger> GetSupervisionSamplingDetailData(SubreportProcessingEventArgs e) {
//接受子报表RDLC里面的参数
string productDictId =e.Parameters["productDictId"].Values[];
string spec = e.Parameters["spec"].Values[];
string certificateNo = e.Parameters["certificateNo"].Values[];
var list = new StatisticalLedgerBL().GetSupervisionSamplingDetailData(productDictId, spec, certificateNo);
return list;
}
public List<StatisticalLedger1> GetUseRegisterData(SubreportProcessingEventArgs e)
{
//接受子报表RDLC里面的参数
string productDictId = e.Parameters["productDictId"].Values[];
string spec = e.Parameters["spec"].Values[];
var list = new StatisticalLedgerBL().GetUseRegisterData(productDictId, spec);
return list;
}

RDLC 子报表的更多相关文章

  1. RDLC 主从报表筛选

    今天继续学习RDLC报表的“参数传递”及“主从报表” 一.先创建DataSet,如下图: 二.创建一个报表rptDEPT.rdlc,显示部门T_DPET的数据 三.嵌入Default.aspx中,写在 ...

  2. RDLC系列之二 子报表

    本文实现简单的子报表 一.效果图

  3. Reporting Services 钻取报表、子报表

    一.钻取报表 1.概念 钻取报表是指用户通过单击其他报表中的链接打开的报表.钻取报表通常包含某原始汇总报表中所包含的某项的详细信息. 例如,在此图中,销售额汇总报表列出了销售订单和总额.当用户单击该汇 ...

  4. iReport 4.1 报表制作,子报表,实例解析

    开发使用步骤(iReport 4.1.1) (个人总结,如有问题请留言,另外知道table控件用法的给我留言或者发邮件谢谢.Email:jiazx0107@163.com) 目录 1.      开发 ...

  5. ReportView动态加载带参数的RDCL文件及子报表

    本文来自Torres.Wu发表在博客园的博客,转载请标明出处. 同上一篇差不多,这次咱们加载带有子报表的RDCl文件.首先还是创建一个form程序,在form2窗体中添加一个ReporView控件,l ...

  6. UniGui中使用Grid++Report报表控件子报表获取数据的方法

    Grid++Report是为优秀的报表控件,子报表是其重要功能之一,但Grid++Report提供的网页报表示范主要是以页面为主的,UniGui在Delphi中以快速编写web管理软件著称,但由于资料 ...

  7. JasperReport子报表参数传递

    子报表参数传递 下图的参数名称可以自定义 再子报表新增一个同名称的参数即可

  8. ActiveReports 报表控件V12新特性 -- 页面报表新增子报表

    ActiveReports是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForms / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求 ...

  9. Dev Express Report 学习总结(三)关于子报表Sub-Report的使用

    子报表即在一个Report(主报表)中嵌入另一个Report(子报表),从理论上来讲,任何一个Report都可以作为一个子报表,但在实际使用过程中,只有主报表和子报表构成一对多关系时才会使用子报表.使 ...

随机推荐

  1. PAT线性结构_一元多项式求导、按给定步长反转链表、出栈序列存在性判断

    02-线性结构1. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过100 ...

  2. javascript中apply、call和bind的区别

    在JS中,这三者都是用来改变函数的this对象的指向的,他们有什么样的区别呢.在说区别之前还是先总结一下三者的相似之处:1.都是用来改变函数的this对象的指向的.2.第一个参数都是this要指向的对 ...

  3. Docker镜像的管理和创建

    1. Docker镜像和Docker容器:      Docker镜像实际上是一系列的文件系统,通常的Linux系统一般是两层文件系统,bootfs和rootfs,bootfs就是bootloader ...

  4. LCD接口(转载)

    LCD接口分类 1.   I8080接口,我觉得应该就是所谓的8080,通常会用在12864屏上面,且有内部sdram,不需要实时的刷新图片,速度有限制, 支持的数据宽度有8/9/16/18bit,接 ...

  5. github 删除仓库 repository

    1.点开想要删除的仓库 2点击setting 3.拉到最下面 4.点击 Delete this repository 5.输入想删除仓库的名字 点击

  6. NSURLSessionTask使用dispatch_semaphore 完成同步机制

    在NSURLSessionTask发起网路请求时,一般是异步操作,如果需要进行同步等待的话,可采用dispatch_semaphore_t信号量基于计数器的一种多线程同步机制.但是在多个线程访问共有资 ...

  7. Apache部署django项目

    在此之前,我们一直使用django的manage.py 的runserver 命令来运行django应用,但这只是我们的开发环境,当项目真正部署上线的时候这做就不可行了,必须将我们的项目部署到特定的w ...

  8. 解决AndroidStudio中文乱码问题

    File→Settings Appearance.将Theme(皮肤)选为Windows.

  9. [SQL入门级] 上篇被移出园子首页,那这篇咱就'薄利多销'

    这个系列的博文知识回顾sql知识作的记录,温故而知新.上一篇内容达不到知识分享的层级被移出园子首页,对不住各位看官,内容简单了些.下面咱就记录多一些的基础知识,薄利多销: 控制用户权限 • 创建用户 ...

  10. HTTP标头

    HTTP头信息 头信息由“键:值”组成.它们描述客户端或者服务器的属性.被传输的资源以及应该实现连接. 四种不同类型的头标 通用头标:即可用于请求,也可用于响应,是作为一个整体而不是特定资源与事务相关 ...