当前位置: 首页 > 图文教程 > 网络编程 > ASP > 关于水晶报表10 的字报表数据填充和显示

ASP
如何善用Response.Buffer增进浏览速度?
利用 Meta Tag 来增加文件属性
要如何使用 ASP Error 组件?
Server.Execute和#include相异之处
ASP中文本文件与数据库文件的数据交换
如何用ASP建立图表
如何在ASP中通过ODBC调用Excel中的数据
不刷新页面改变下拉菜单内容
使用ASP重启服务器
用模板建立动态ASP页
如何用ASP将一大段文字中的HTML的标识去掉
让使用者可以看到你的ASP的原代码
用ASP实现在特定的时段或对特定访问者开放
在ASP中判断SQL语句是否执行成功
直接显示Monday等星期的ASP语句
LINE 的计数器源程序(附源代码)
使用asp+中的若干问题及解决方案
ASP实现多语言支持
Session对象在各浏览器中的有效范围
SQL Server如何解决加密问题?

ASP 中的 关于水晶报表10 的字报表数据填充和显示


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 208 ::
收藏到网摘: n/a

  水晶报表10版本,不再上水晶报表9一样自动帮你给子报表set 记录集,需要你在程序中自己添加

protected CrystalDecisions.Web.CrystalReportViewer CrystalReportViewer1;

DataSet newDs = new DataSet();
     。

     。得到报表的数据集合set给newsDs

   DataSet  dstMain=biz.GetDataSetList(pStart, pEnd, pStoreName);
 newsDs.Tables.Add(dstMain.Tables[0].Copy());//添加主报表数据集

   DataSet dstPOS1 = new DataSet();
      DataSet dstPOS2 = new DataSet();
      dstPOS1 = biz.GetDataSetList(pStart, pEnd, pStoreName1);
      dstPOS2 = biz.GetDataSetList(pStart, pEnd, pStoreName2);
      newsDs.Tables.Add(dstPOS1.Tables[0].Copy());//添加子报表数据集
      newsDs.Tables.Add(dstPOS2.Tables[0].Copy());//添加子报表数据集

    。

  Type m_Report_type  = m_Assembly.GetType(ReportClassName);//ReportClassName是报表名
     Object aa = m_Assembly.CreateInstance(m_Report_type.FullName);
     ReportClass reportEngine  = (ReportClass)m_Assembly.CreateInstance(m_Report_type.FullName);

   for(int i=1;i<newDs.Tables.Count;i++)//给子报表赋值
     {
      ReportDocument oSubreport=reportEngine.Subreports[i-1];
      oSubreport.SetDataSource(newDs);
     }

     reportEngine.SetDataSource( newDs );
     CrystalReportViewer1.ReportSource = reportEngine;
     return;