如何解决水晶报表10的部署问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何解决水晶报表10的部署问题相关的知识,希望对你有一定的参考价值。

参考技术A 感觉水晶报表操作起来比较麻烦哦,为啥不用帆软报表FineReport。。。
水晶报表下载安装后打开VS2010就可以在左边工具栏中看到CRYSTALREPORTVIEWER,并且可以新建水晶报表了;
a. 运行环境不能为.NET FRAMEWORK 4.0 CLINET PROFILE,要改为.NET FRAMEWORK 4,选中项目右键属性就可以更改了;
b.在项目中加一个APP.CONFIG(这是针对WINFORM项目),如果是WEB项目就不用加了,里面有一个WEB.CONFIG;在这配置文件中加上 <startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
这可以避免ADO.NET与水晶报表运行时由于.NET版本问题出错
(1)下面做一个简单的水晶报表,在项目中建一个窗体FORM1,一个水晶报表CrystalReport1,一个数据集DATASET1;(水晶报表的设置跟以前版本的一样)
在窗体上放一个CRYSTALREPORTVIEWER,然后在FORM1的LOAD事件下写上;我这是把水晶报表放在DEBUG这个文件夹下动态加载的;你也可以直接放在项目中在CRYSTALREPORTVIEWER上指定报表名称;
private void Form1_Load(object sender, EventArgs e)

SqlConnection con = new SqlConnection("Data Source=10.100.100.5;Initial Catalog=cldz;User ID=proc4;Password=77cc88");
con.Open();
SqlDataAdapter da = new SqlDataAdapter("select top 100 * from ZZZPJ", con);
DataSet ds = new DataSet();
da.Fill(ds, "ZZZPJ");
string reportPath = Application.StartupPath + @"\CrystalReport1.rpt";
ReportDocument rd = new ReportDocument();
rd.Load(reportPath);
rd.SetDataSource(ds.Tables[0].DefaultView);
this.crystalReportViewer1.ReportSource = rd;

(2)vs2010水晶报表的发布有两种方式;
一是直接下载MSI文件安装在客户端,客户端就可以用了;32位的下载上面的;如果是64位的下载下面的;
水晶报表VS2010版运行时32位和64位单独安装包:
32位下载地址:http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_32bit_13_0_1.zip
64位下载地址:http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_redist_install_64bit_13_0_1.zip
二是下载上面水晶报表VS2010版合并模块安装包文件,里面第一个是CRRuntime_13_0_1.msm这个是英文包;如果需要支持中文就加一个MSM,( CRRuntime_13_0_1_zh_cn.msm); 另外加一个CRRuntime_13_0_1_maps.msm 这个可以不用;合并模块安装包下载地址:http://downloads.businessobjects.com/akdlm/cr4vs2010/CRforVS_mergemodules_13_0_1.zip
用VS2010自带的打包软件打包发布,新建一个安装项目,安装项目的制作过程这里就不详细说了,跟VS2005的制作过程一样(参见部署包含水晶报表Crystal Reports 的VS.NET2005应用程序[原创]:http://hi.baidu.com/jcserver/blog/item/5629e018eccef3ac4aedbc9a.html);
制作完后,右键项目选添加―― 合并模块―― 把上面提到的三个以.MSM结尾的文件加入进去,最后确定。
[特别说明:
有的网文中说需要把
C:\Program Files\Common Files\Merge Modules文件夹中类似Microsoft_VC100_*_x86.msm的MSM文件也加入进去
如果是32位的就加x86的(Microsoft_VC100_ATL_x86.msm、Microsoft_VC100_CRT_x86.msm、Microsoft_VC100_DebugCRT_x86.msm、Microsoft_VC100_DebugMFC_x86.msm、Microsoft_VC100_DebugOpenMP_x86.msm、Microsoft_VC100_MFCLOC_x86.msm、Microsoft_VC100_MFC_x86.msm、Microsoft_VC100_OpenMP_x86.msm);
如果是64位的就加x64的(Microsoft_VC100_ATL_x64.msm、Microsoft_VC100_CRT_x64.msm、Microsoft_VC100_DebugCRT_x64.msm、Microsoft_VC100_DebugMFC_x64.msm、Microsoft_VC100_DebugOpenMP_x64.msm、
Microsoft_VC100_MFCLOC_x64.msm、Microsoft_VC100_MFC_x64.msm、Microsoft_VC100_OpenMP_x64.msm )
但是,经过JCSERVER的验证:类似Microsoft_VC100_*_x86.msm不用加进去,也可以在正常打印出水晶报表.建议你把CRRuntime_13_0_1.msm、CRRuntime_13_0_1_zh_cn.msm(中文简体语言包,如是其它语言请自行选择不同的语言包)、CRRuntime_13_0_1_maps.msm这三个模块加进去。]

说明: 在VS2010中按F1调出帮助文档,搜索”合并模块”关键字,你会看到更多的合并模块布署程序的帮助说明.
再右键项目选属性,点击“系统必备”按钮;在弹出的对话框中选中与你的程序对应版本的运行库(有32位的X86与64位的X64),注意根据系统选,有32与64位的;在下面的单选按钮中选第二项“从与我的应用程序相同的位置下载系统必备组件”;(如果你要安装.NET2.0的系统必备,VS2010安装项目的系统必备中没有.NET 2.0,不过我们可以从VS2008的程序文件中找到 .NET 2.0 的系统必备安装包。安装了VS2008 的 C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\Packages 下的 DotNetFX 文件夹,就是 .NET 2.0 的系统必备安装包。把 DotNetFX 文件夹复制到安装了 VS2010 的 C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages下,然后在VS2010中就可以选择 .NET 2.0 的系统必备组件了。

水晶报表 如何设置水晶报表 crystal reports 的字段自动换行

在做报价系统时候水晶报表做最后报表的产出。由于规格字数较长,用户在预览报表时无法看全规格,规格多出部分会导致重叠现象。

百度文库提供一个解决方案:

1.如何设置水晶报表(crystal reports)的字段自动换行

水晶报表从数据库中读取的数据,当字段内容比较长时,很影响美观,需要设置它为自动换行来显示。

影响美观的没有自动换行的报表图示:

技术分享图片

 

OK,看了图示,觉得实在太难看了,好,我们来设置它自动换行吧:

1.打开字段的格式化字段属性,将其公用标签下的可以扩大(CANGROW)属性选上,如图:

技术分享图片

 

2.打开节专家,将详细资料中的延伸到后续节(UNDERLAYSECTION)选中,如果有多个节点可以全部选中;

3.将报表中line和box控件的打印时扩展到节的底部(EXTENDTOBOTTOMSECTION)的属性选中,这样LINE和BOX才会随着每一行数据高度自动向下移动。如图:

技术分享图片

 

OK,大功告成啦,保存报表文件,运行看下数据吧:

技术分享图片

具体还可以用水晶报表的准线来协助画。
如何显示准线
选择"视图"菜单上的"准线"命令。
使用"设计"命令可以在"设计"选项卡中显示或隐藏准线。使用"预览"命令可以在"预览"选项卡中显示或隐藏准线。
注意:在"预览"选项卡上,必须选择一个对象才能看到准线。

最后显示一下按要求修改的结果:

技术分享图片

 

技术分享图片

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow





以上是关于如何解决水晶报表10的部署问题的主要内容,如果未能解决你的问题,请参考以下文章

我已经绝望了,水晶报表打包真难啊100求助

怎么使用和创建水晶报表 子报表?

C# windows应用程序中水晶报表怎么用???

Visual Studio 2010 里面的水晶报表怎么弄?

这个是我在做水晶报表的时候运行之后出现的错误提示,请问是为啥啊请高手解决下!

水晶报表显示动态图片