activereport subreport
来源:互联网 发布:网易云音乐 网络歌曲 编辑:程序博客网 时间:2024/05/18 11:29
使用DataDynamics.ActiveReports开发报表是一种不错的选择。今天由于项目需要在一个已有的报表上添加另外一个报表的内容,于是就想到了使用它的子报表功能。这样就可以实现项目需求。
首先查看了DataDynamics.ActiveReports自带的SubReport的示例项目。它是将子报表放在原报表的明细中,其实我试过也可以把子报表放在报表头或报表尾。关键是在定义子报表是要将子报表的报表头和报表尾删除掉换成分组。我想这是因为在同一个报表中只能定义一个报表头和报表尾的缘故,如果子报表也这样定义也许会有冲突。
下面就把制作子报表的简要步骤列举如下:
首先制作一个报表,并使其能够正常预览。然后在设计视图的工具箱中拖放一个Subreport的控件到报表上,可以放在报表的任何部分。然后重命名这个子报表。
接下来,在这个报表的相关部分的Format事件中添加初始化子报表的代码。例如:这时子报表放在报表头那么就应该在报表头的Format事件中添加代码,如下所示。
using DataDynamics.ActiveReports;
using DataDynamics.ActiveReports.Document;
using DataDynamics.ActiveReports.DataSources;
// 父报表
public class MyActiveReport : ActiveReport
{
//创建一个需要在子报表中显示的已有报表类的实例
rptSubReport _SubReport = null;
// 其他代码省略
private void PageHeader_Format(object sender, System.EventArgs eArgs)
{
if (_SubReport == null)
{
SqlDBDataSource subDs = new SqlDBDataSource(); // 声明ActiveReports数据源
subDs.ConnectionString = cnnString; // 给这个数据源指定连接字符串
subDs.SQL = "select * from table1 "; // 指定查询语句
_SubReport = new rptSubReport(); // 实例化预定义报表实例
this.SubReport.Report = _SubReport; // 给子报表指定预定义报表实例
this.SubReport.Report.DataSource = subDs; // 给子报表指定ActiveReports数据源
}
}
}
首先查看了DataDynamics.ActiveReports自带的SubReport的示例项目。它是将子报表放在原报表的明细中,其实我试过也可以把子报表放在报表头或报表尾。关键是在定义子报表是要将子报表的报表头和报表尾删除掉换成分组。我想这是因为在同一个报表中只能定义一个报表头和报表尾的缘故,如果子报表也这样定义也许会有冲突。
下面就把制作子报表的简要步骤列举如下:
首先制作一个报表,并使其能够正常预览。然后在设计视图的工具箱中拖放一个Subreport的控件到报表上,可以放在报表的任何部分。然后重命名这个子报表。
接下来,在这个报表的相关部分的Format事件中添加初始化子报表的代码。例如:这时子报表放在报表头那么就应该在报表头的Format事件中添加代码,如下所示。
using DataDynamics.ActiveReports;
using DataDynamics.ActiveReports.Document;
using DataDynamics.ActiveReports.DataSources;
// 父报表
public class MyActiveReport : ActiveReport
{
//创建一个需要在子报表中显示的已有报表类的实例
rptSubReport _SubReport = null;
// 其他代码省略
private void PageHeader_Format(object sender, System.EventArgs eArgs)
{
if (_SubReport == null)
{
SqlDBDataSource subDs = new SqlDBDataSource(); // 声明ActiveReports数据源
subDs.ConnectionString = cnnString; // 给这个数据源指定连接字符串
subDs.SQL = "select * from table1 "; // 指定查询语句
_SubReport = new rptSubReport(); // 实例化预定义报表实例
this.SubReport.Report = _SubReport; // 给子报表指定预定义报表实例
this.SubReport.Report.DataSource = subDs; // 给子报表指定ActiveReports数据源
}
}
}
最好在父报表中加上“using DataDynamics.ActiveReports.DataSources;” 这样就可以直接使用DataDynamics.ActiveReports.DataSources的数据源类。ActiveReports的数据源支持SQL 和OLEDB可以根据需要选择。
洪虎
2006-10-28
- activereport subreport
- activereport subreport
- ActiveReport 学习
- 关于ActiveReport
- ActiveReport 事件
- ActiveReport小记
- report services subreport空白
- JasperReports Subreport 实例
- ActiveReport入门教程(五) - ActiveReport介绍
- Jasper SubReport Resource Not Found
- C# RDLC子报表Subreport
- ASP.NET ACTIVEREPORT
- ActiveReport开发一
- activereport开发二
- ActiveReport系列随笔收集
- ActiveReport使用总结
- ActiveReport系列随笔整理
- ActiveReport建立报表文件
- 屏蔽鼠标右键等
- 初始化顺序(Thinking in Java中的一段有意思的例子)
- 网页中动态生成控件的有效控制方案初步
- 在Java中用类装载框架控制类加载
- 多线程同步
- activereport subreport
- Visual Basic中在同一界面输入大量数据的几种方法
- Constructor or not constructor?
- 我的博客诞生了...
- 我强悍的 Firefox 插件
- vb控件使用笔记
- 在线培训系统设计文档
- java关于23种设计模式的有趣见解
- 重要更新!SQL Server 2005 Service Pack 2 (KB:933508)