环境:SqlServer 2000;Vs.net 2000;Crystal Report 9;现在我在做一个.net Web项目,里面有大量的复杂报表,最近考虑用 Crystal Reports 水晶报表来做,但是经过这两天的摸索,对水晶报表这东西还是没的把握。1.水晶报数据访问模式有拉pull和推push模式,可不可以这样理解,pull模式是所有SQL取数据语句都
写在报表里(包括数据库连接字符串),push模式则在.net后置C#代码中组合好数据源(如DataSet)后再绑定到报表上(如:CrystalReportViewer1.ReportSource = oCR),这样.rft只是相当与一个显示控件;大家采用的是哪种方式?理由?2.看过有人在asp中做过的水晶报表,是在网页中嵌一个水晶报表ActiveX,这样有打印、导出按扭,个人觉得是一个比较好的显示方式,这种能不能就理解为pull拉模型?如果在.net中嵌类似一个ActiveX有什么考虑?在.net Web中是以HTML显示的,没的打印功能,怎么样解决?3.水晶报表有报表引擎,报表服务端,怎么把它部署到与Web IIS不同的机器,在程序中哪些地方会用到报表引擎方面的东西?如果不在WEB服务器端,有哪些限制与注意的地方,要怎么设置?4.按照飞刀写的一篇文章(http://www.yesky.com/20020618/1616438.shtml),我做了一个Push方式的例子,(DataSet1.xsd;Report1.rft;WebForm1.aspx+CrystalReportViewer)都照建了,但是最后显示的报表没有任何数据,只有一个字段标题,不知问题出在哪?是不是每做一个报表都要做类似一个 DataSet1.xsd 文件??现在我们的项目报表提取数据比较复杂,很多要用SQL 存储过程来做,希望做过这方面项目的朋友多指点,谢谢![email protected]
写在报表里(包括数据库连接字符串),push模式则在.net后置C#代码中组合好数据源(如DataSet)后再绑定到报表上(如:CrystalReportViewer1.ReportSource = oCR),这样.rft只是相当与一个显示控件;大家采用的是哪种方式?理由?2.看过有人在asp中做过的水晶报表,是在网页中嵌一个水晶报表ActiveX,这样有打印、导出按扭,个人觉得是一个比较好的显示方式,这种能不能就理解为pull拉模型?如果在.net中嵌类似一个ActiveX有什么考虑?在.net Web中是以HTML显示的,没的打印功能,怎么样解决?3.水晶报表有报表引擎,报表服务端,怎么把它部署到与Web IIS不同的机器,在程序中哪些地方会用到报表引擎方面的东西?如果不在WEB服务器端,有哪些限制与注意的地方,要怎么设置?4.按照飞刀写的一篇文章(http://www.yesky.com/20020618/1616438.shtml),我做了一个Push方式的例子,(DataSet1.xsd;Report1.rft;WebForm1.aspx+CrystalReportViewer)都照建了,但是最后显示的报表没有任何数据,只有一个字段标题,不知问题出在哪?是不是每做一个报表都要做类似一个 DataSet1.xsd 文件??现在我们的项目报表提取数据比较复杂,很多要用SQL 存储过程来做,希望做过这方面项目的朋友多指点,谢谢![email protected]
解决方案 »
- 使用nhibernate,代码里写的是批量删除,但是通过mssql跟踪发现删除是逐条删除。为什么?请教高手。
- 在asp.net的页面中如何引用ocx控件? 代码怎么写?
- 请问wsdl.exe的问题~
- 如何将旧的数据库记录提前?
- 关于中国移动话费网站
- 头疼难题:系统日志中发现大量“超时”错误,不知该问题是何原因造成?哪位大哥帮忙看一下!谢谢!!!
- 描述在网页中显示数据库的一般过程
- 谁能看看 在关键字 'order' 附近有语法错误!
- .NET下html5求助
- 急!关于读取客户机上的文件的问题???
- 验证码识别(傻爪型,不是哪种智能的) 知道多少谈多少
- 如何在后台代码中设置web控件或者html表单元素的值
MSN:[email protected]
1 如果你到很多的存储过程/sql语句等,强列建议你使用push,最好是强类型,我认为比较好的解决方法就是在dataset中选定好数据,然后送到水晶报表,报表的工作只有一个,显示,并提供打印,如果使用水晶报表9。2以上的版本,还有叶面打印功能,是自带的,很方便。
你说”报表的工作只有一个,显示,并提供打印,如果使用水晶报表9。2以上的版本,还有叶面打印功能,是自带的,很方便”.我的项目是 .net Web 项目,全是B/S架构,用CrystalReportsViewer WebControl显示报表,最终IE客户端是以 HTML方式显示,没发现上面有页面打印功能啊?包括导出也没有,只有些“翻页”、“跳转”、“查找”、“放到缩小”按扭。能不能在网页中嵌一个水晶报表ActiveX,又能在C#代码中给它绑定数据源?
注 :水晶报表(9.2.0.448),
我是在 .aspx 中放CrystalReportViewer ,最终显示给IE客户端的是HTML啊,上面的控件按扭也没"打印"?怎么回事?
我曾经做过财务报销单套打,
可以分页,
有空交流,
msn: [email protected]
一个DataSet1.xsd可以有多个element,把存储过程里面的字段填进去进可以啊。
搂主说的“拉”数据,这样以来,安全性(SQL语句通过URL传递),编程复杂性(要和ASP.NET实现单点登陆)都下降,但是却是功能很强大,很美观,客户端可以实现多种文档导出,预览,翻页,打印
具体做法:
1。设计一个水晶报表!
2。ASP编写一个显示页面
3。传递SQL语句和水晶报表的名称及连接属性到第二步的页面
呵呵,就这么多!对了,水晶报表已经被收购了!
页面1:<html>
<head >
<title >请稍候........</title>
<script>
function go(strurl)
{
window.location="ReportView.asp?" + strurl ;
}
</script>
</head><%
'Response.Buffer=true
strSql= Request.QueryString("SQL")
reportname = Request.QueryString("ReportName")
strurl=chr(34) & "SQL=" & strSql & "&ReportName=" & reportname & chr(34)
'Response.Write (strurl)
%>
</html> <% Response.Write ("<script>go(" & strurl & ");</script>") %>
IE 的安全级别默认是不能访问ActiveX的 每次访问时都会弹出一个对话框必须把IE的安全级别调低些
怎么样解决功能,与运行环境问题。
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.Source Error: An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. Stack Trace: [NullReferenceException: Object reference not set to an instance of an object.]
CrystalDecisions.Web..get_7() +189
CrystalDecisions.Web.CrystalReportViewer.OnInit(EventArgs e) +352
System.Web.UI.Control.InitRecursive(Control namingContainer) +241
System.Web.UI.Control.InitRecursive(Control namingContainer) +179
System.Web.UI.Control.InitRecursive(Control namingContainer) +179
System.Web.UI.Page.ProcessRequestMain() +174
1."document.all."+TextBox1.ClientID+".Text"
2.如何部署包含水晶报表的程序(VS.NET 2002)
------------------------------------------------
1、原理:
发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在 C:\Program Files\Common Files\Merge Modules\ 目录里面。
(1)报表(*.rpt)
用户编程时创建的水晶报表文件。
(2)模块(*.msm)
Managed.msm
该模块包含了CR for VS .NET 的管理模块,如 CrystalDecisions、CrystalReports.Engine.DLL、CrystalDecisions.Web.DLL, 和 CrystalDecisions.Windows.Forms.DLL……
Managed_chs.msm
是该模块的中文版语言支持。
Database_Access.msm
该模块包含了数据库的驱动、与不同数据库的联结、报表导出为 RTF 和 HTML 格式的文档和图表组件。
Database_Access_chs.msm
是此模块的中文版语言支持。
Regwiz.msm
注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过。
KeyCode MSM 处理 Crystal Decisions 密钥号码的安装,这样您的用户在查看报表时,就不会被要求注册他们的 Crystal版本。
(3)运行库(*.msm)
如果报表文件使用了 ADO.NET 的 dataset 数据集对象,那么 VC_CRT.msm 和 VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的"Module Retargetable Folder"项必须修改成为系统目录
在VS.NET安装工程中,系统检测出来的依赖项只有 dotNETFXRedist_x86_chs.msm 和 Managed.msm这两个模块,其他的模块我们需要手动加入。
-------------------------
2、具体操作步骤:
(1)新建“安装和部署项目”-->“安装向导”
(2)选择项目类型(这里选“创建用于windows应用程序的安装程序”)-->下一步
(3)选择要包含的文件:添加你的程序文件和 C:\Program Files\Common Files\Merge Modules 下的 managed.msm、managed_chs.msm、database_access.msm、database_access_chs.msm、regwiz.msm、VC_CRT.msm、VC_STL.msm。-->完成
(4)打开解决方案-->右键点击regwiz.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
(5)生成解决方案(或直接按Ctrl+Shift+B)图示介绍:http://www.yesky.com/20030327/1659638.shtml
------------
因为未能在分配的时间内获得免费许可证,所以 Crystal Reports 作业失败。可以直接从 Crystal Decisions 或通过 Crystal Decisions 在线商店购买更多的许可证。 我的CrystalReport是正版的,上面的意思是不是说我的注册号已经过期了,怎么会出现这样的问题?
2、据说水晶报表10.0版中新增了可以在asp.net中用ActiveX控件来显示报表的功能,但还
没有用过
1."document.all."+TextBox1.ClientID+".Text"
2.如何部署包含水晶报表的程序(VS.NET 2002)
------------------------------------------------
1、原理:
发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在 C:\Program Files\Common Files\Merge Modules\ 目录里面。
(1)报表(*.rpt)
用户编程时创建的水晶报表文件。
(2)模块(*.msm)
Managed.msm
该模块包含了CR for VS .NET 的管理模块,如 CrystalDecisions、CrystalReports.Engine.DLL、CrystalDecisions.Web.DLL, 和 CrystalDecisions.Windows.Forms.DLL……
Managed_chs.msm
是该模块的中文版语言支持。
Database_Access.msm
该模块包含了数据库的驱动、与不同数据库的联结、报表导出为 RTF 和 HTML 格式的文档和图表组件。
Database_Access_chs.msm
是此模块的中文版语言支持。
Regwiz.msm
注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过。
KeyCode MSM 处理 Crystal Decisions 密钥号码的安装,这样您的用户在查看报表时,就不会被要求注册他们的 Crystal版本。
(3)运行库(*.msm)
如果报表文件使用了 ADO.NET 的 dataset 数据集对象,那么 VC_CRT.msm 和 VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的"Module Retargetable Folder"项必须修改成为系统目录
在VS.NET安装工程中,系统检测出来的依赖项只有 dotNETFXRedist_x86_chs.msm 和 Managed.msm这两个模块,其他的模块我们需要手动加入。
-------------------------
2、具体操作步骤:
(1)新建“安装和部署项目”-->“安装向导”
(2)选择项目类型(这里选“创建用于windows应用程序的安装程序”)-->下一步
(3)选择要包含的文件:添加你的程序文件和 C:\Program Files\Common Files\Merge Modules 下的 managed.msm、managed_chs.msm、database_access.msm、database_access_chs.msm、regwiz.msm、VC_CRT.msm、VC_STL.msm。-->完成
(4)打开解决方案-->右键点击regwiz.msm的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
(5)生成解决方案(或直接按Ctrl+Shift+B)图示介绍:http://www.yesky.com/20030327/1659638.shtml
http://msdn.microsoft.com/library/chs/default.asp?url=/library/chs/vsintro7/html/vbtskDeployingWebSolution.asp参照
http://www.itonline.gd.cn/ittech/list.asp?id=617
http://blog.csdn.net/younther/archive/2004/06/16/20185.aspx