我想先发布程序,然后单独发布水晶报表, 能实现吗?

lvyb036 2011-08-27 01:26:40
我前期应该做哪些工作? 先谢谢各位了.
...全文
56 点赞 收藏 8
写回复
8 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
阿泰 2011-08-31
[Quote=引用 7 楼 51crack 的回复:]
引用 5 楼 lvyb036 的回复:
对对对,我就是想实现你说的后者,看来问题比较复杂,能推荐篇文章看看不?
拉模式就行了
[/Quote]

理论上讲用拉模式确实会方便些

其实你分析一个现有代码,会发现水晶报表的代码无非就那么几句。

ReportDocument rd = new ReportDocument();
//加载模板
rd.Load(Server.MapPath("CrystalReport.rpt"));
//给数据源
...
//参数赋值
...


只要把这些固定值做到配置文件里,从配置文件按需加载就可以了
回复
51Crack 2011-08-30
[Quote=引用 5 楼 lvyb036 的回复:]
对对对,我就是想实现你说的后者,看来问题比较复杂,能推荐篇文章看看不?[/Quote]
拉模式就行了
回复
lvyb036 2011-08-29
[Quote=引用 4 楼 babyt 的回复:]

先发布程序,再发布水晶报表具体是什么概念呢?

一般来说有两种情况,

一是报表跟程序其他模块一起开发,发布的时候,只打包程序部分的依赖组件
水晶报表组件单独打包,这个是可以的。
因为水晶报表组件包比较大,如果目标机器上已经有水晶报表组件了,就不用再安装水晶报表包
这个算是打包的层面

另外一种是开发层面,比如说整体程序不变,但是水晶报表rpt却在增量开发
先期发布后,再增量……
[/Quote]

对对对,我就是想实现你说的后者,看来问题比较复杂,能推荐篇文章看看不?
回复
阿泰 2011-08-29
先发布程序,再发布水晶报表具体是什么概念呢?

一般来说有两种情况,

一是报表跟程序其他模块一起开发,发布的时候,只打包程序部分的依赖组件
水晶报表组件单独打包,这个是可以的。
因为水晶报表组件包比较大,如果目标机器上已经有水晶报表组件了,就不用再安装水晶报表包
这个算是打包的层面

另外一种是开发层面,比如说整体程序不变,但是水晶报表rpt却在增量开发
先期发布后,再增量发布水晶报表rpt文件
这个也是可以实现的,不过对于程序架构时要花点心思。
回复
wysyz 2011-08-29
阿泰:

水晶报表单独打包,就用合并模块打包发布,是不是?

另外,水晶报表2011出来了,是否支持RDC编程?哪里能下到水晶报表2011?
回复
lvyb036 2011-08-28
回复
蝶恋花雨 2011-08-27
http://blog.csdn.net/liucunjian2009/article/details/3878749
http://www.yongfa365.com/item/CrystalReports-DaBao.html
回复
蝶恋花雨 2011-08-27
这个真不清楚。你可以试试。,
4、水晶报表应用程序的发布
1)安装部署
安装部署时,把水晶报表的msm打进去,注册到服务器,要部署使用 Crystal Reports for Visual Studio .NET 2003 的程序,首先,找到以下7个文件(你可以 '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
VC_User_CRT71_RTL_X86_---.msm
VC_User_STL71_RTL_X86_---.msm
接着,在解决方案资源管理器中,右击安装项目,指向“添加”,然后单击“合并模块”。在“添加模块”对话框中,选择上面的7个要添加到安装项目的合并模块,然后单击“打开”。
还有,打开解决方案-->右键点击 Crystal_regwiz2003.msm 的属性,在“MergeMouduleProperties”里的“License Key”填入:AAP5GKS0000GDE100DS(这个是你生成Crystal Report是用到的注册号的密码!)
2)部署水晶报表时的常见问题及解决方案
(1)载入报表时报错
问题出在报表发布上。发布使用水晶报表的项目需要包含三种组件:报表(*.rpt)、模块(*.msm)、运行库(*.msm),这些模块文件是在 C:/Program Files/Common Files/Merge Modules/ 目录里面。
A.报表(*.rpt):用户编程时创建的水晶报表文件。
B.模块(*.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 注册信息模块,非常重要,必需在这个模块输入水晶报表的注册序列号,如果不填,编译的时候就无法通过
C:运行库(*.msm):
如果报表文件使用了 ADO.NET 的 dataset 数据集对象,那么 VC_CRT.msm 和 VC_STL.msm 模块也必须包含在安装工程中。而且这两个模块的文件安装属性的/Module Retargetable Folder/项必须修改成为系统目录。在VS.NET安装工程中,系统检测出来的依赖项只有 dotNETFXRedist_x86_chs.msm 和 Managed.msm这两个模块,其他的模块我们需要手动加入。
回复
相关推荐
发帖
图表区
创建于2007-09-28

4810

社区成员

.NET技术 图表区
申请成为版主
帖子事件
创建了帖子
2011-08-27 01:26
社区公告
暂无公告