首先如果要让发布的打包项目能在服务器上安装,并且稳定的运行,需要在安装项目中做以下工作:Crystal Report 打包过程。将
C:\Program Files\Common Files\Merge Modules\ 下的Crystal_Database_Access2003.msm
Crystal_Database_Access2003_chs.msm
Crystal_Managed2003.msm
Crystal_Managed2003_chs.msm
Crystal_regwiz2003.msm
这五个文件添加进入安装包。
并设置包Crystal_regwiz2003.msm的ModuleDependencies属性值为“AAP5G-KS00000-U7000T5”
Cryustall Report.net 的序列号:
注册号码:6192203776
Key:AAP5G-KS00000-U7000T5
不过只能5个用户同时用
使用Crystal Report.net进行开发的一些预备知识:
执行模式 水晶报表取数据可以使用下面的方法实现:
Pull 模式:
被请求时,水晶报表直接根据指定的驱动连接数据库然后组装这些数据。
Push 模式 :
此时开发表不得不自己编写代码连接数据并组装DataSet,同时将它传送至报表。在些这种情况下,通过使用连接共享以及限制记录集合的大小,可以使用报表性能最大化。
报表类型: 水晶报表设计器能够直接包含报表至工程也能够使用独立的报表对象。
Strongly-typed 报表 :
当你将报表文件加入到项目中去时,它就变成了一个了“ strongly-typed“报表。在这些情况下,你将拥有直接创建报表的对象的权力,这将减少一些代码并且能够提供一些性能。
Un-Typed 报表 :
这里的报表并不直接包含在项目中,因此称为‘un-typed’ 报表。在这种情况下,你不得不使用水晶报表的”ReportDocuemt“对象建立一个实例,并且”手动“地凋用报表。
其它注意事项
尽管水晶报表查看器拥有一些很酷的功能,如缩放、页面导航等。但是他不提供打印功能,你不得不调用游览器的打印功能。
VS.Net中的水晶报表如果没有注册,那么它只能使用30次,30次后,”保存“功能就不能再使用了。为了避免这个,你不是不在 http://www.crystaldecisions.com/这里注册此产品。 (好像不是这样子的,不注册也好像能用很长的时间,只是不能提供支持)
默认安装的水晶报表只能支持5个用户,为了支持更多的用户,你不得不在 http://www.crystaldecisions.com/中购买许可证。
我在实际开发应用中使用的是Push 模式 : , 因为一般表格模式比较简单,在Web开发上完全可以用其他方式替代,因此,我使用的是实际开发中的图形报表做为例子。
开发步骤如下:
1、在项目中创建一个数据集,然后右键->选择“新建element”,element的名称就是数据表的名称。
数据集名称暂时定为:ReportData,element相当于一个数据表,名称暂定为:DataTable,下一步是给element
增加字段,也就是我们报表中要使用的数据。注意字段类型。
2、绘制一个空的Crystal Report的报表文件(*.rpt),然后,在报表绘制界面上右键->选择“数据库->添加/删除数据库”打开“数据库专家”,选择“项目数据->ADO.net数据集”,你会看到刚才创建的element数据集ReportData,选用DataTable做为报表数据。下一步,通过报表专家插入“图表”,使用DataTable中的数据字段
来生成报表的数据。
3、创建一个Web窗体,在窗体上放一个CRYSTALREPORTVIEWER控件!写代码获取填充一个定义的数据集DataSet,然后,生成一个“报表文件的对象”,把该对象的数据源指向已经填充数据的DataSet,对CRYSTALREPORTVIEWER控件的ReportSource属性赋值等于生成的“报表文件的对象”,CRYSTALREPORTVIEWER控件的Visible属性设置为true;
代码注意事项:
1、DataSet中填充数据的表的名称必须和原来定义的element一致,否则报表出来会是空白2、用于填充DataSet数据表的字段也要和element定义的字段属性,名称一致!比如:
element中定义字段有两个:EntryName string, EntrySales decimal
填充DataSet的SQL语句,
Select B.Item_Name as EntryName ,Sum(A.Expend_Money) AS EntrySales From T_Ware_Sales .......
完成以上3个步骤,你就可以在IE上看到你的Web图形报表了,其实就是Crystal生成的一张图片!
大功告成!
下一个章节,我将用自己的代码来详细说明整个过程。不过要是熟悉.net开发的按照我在本章节所描述的内容,应该已经没问题了!
function StorePage()
{
d=document;
t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');
void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));
keyit.focus();
}
有一次把一个使用Crystal的项目移植,到另外的一个开发环境下!
项目运行起来发现,crystal生成的图片全变成了红X, NND恶心啊!
后来和运行良好的环境比较发现,新的IIS网站根目录下缺少一个虚拟目录:CrystalReportWebFormViewer2该虚拟目录指向D:\Studio.net 2003\Crystal Reports\Viewers\, 就是我安装Studio.net 开发环境的目录下!
我在新环境中建一个同名的虚拟目录,指向新机器的对应目录!
再次运行项目! 一切OK!
相关推荐
水晶报表Crystal Report .Net SDK
asp.net MVC 实现水晶报表代码 Using Crystal Report in ASP.net MVC and creating generic report viewer
ASP.NET CrystalReport水晶报表制作教程,图文并茂
2、使用 Crystal Reports for Visual Studio .NET,可以在 Web 平台和 Windows 平台上承载报表,并将 Crystal 报表作为报表 Web 服务在 Web 服务器上发布;3、利用Crystal Report 创建的Web应用程序,使用户可以深化...
Crystal Report篇之Web报表服务,MSDN WebCast视频教程
.net 水晶报表实例.rar.net 水晶报表实例.rar.net 水晶报表实例.rar.net 水晶报表实例.rar
一个快速入门的教程,从引入CrystalReport水晶报表开始,以一个完整的流程及简要的配置代码为例,向朋友们介绍水晶报表的使用技巧,ASP.NET开发的朋友更应该参阅一下。 …
Asp.net水晶报表(CrystalReports)及柱状图源码大全。
本书强调实例学习,通过众多范例让你把握Crystal Reports 玩于股...学习通过Crystal Report Document类来动态控制报表的结构与内容以及学习如何集成ADO.NET等多种Crystal Report的应用方法与技巧,提高报表设计的能力。
.net Crystal Report实战演练附件光盘
.net水晶报表CrystalReports
CrystalReport水晶报表测试代码集锦 有两部分Crystal Reports8.5部分和CrystalReport.Net部分 database数据库Visual Basic部分Visual C++部分三部分在Crystal Reports8.5部分里; 比较不错,多种语言
vb.net如何实现报表,请参考这个实例,希望对您有所帮助
ASP.NET--CrystalReport
水晶报表CrystalReport开发组件合集 含WEB及FORM开发组件。
跟我一起学Visual Studio 2005(17):Crystal Report篇之设计报表 在Visual Studio 2005中利用Crystal Report是如何设计报表的呢?在设计方面Visual Studio 2005中的Crystal Report有哪些改进呢?本讲向各位介绍这一...
主要是用于crystal report web 服务的 包括很多水晶报表的知识
CrystalReport水晶报表教程,CrystalReport水晶报表教程
使用ReportingService与CrystalReport开发企业报表
专业计算机基础\用实例学Crystal Report for Visual Studio.NET.rar