关于CrystalReport for vs2010 水晶报表 webform发布的问题

ttyrone 2012-04-23 09:27:08
看了好多帖子,都说是不在服务器上安装程序就用不了水晶报表,可是我为什么发布了连主页都打不开了呢,提示:
Server Error in '/xxxxx' Application.
--------------------------------------------------------------------------------

Runtime Error
Description: An application error occurred on the server. The current custom error settings for this application prevent the details of the application error from being viewed remotely (for security reasons). It could, however, be viewed by browsers running on the local server machine.

Details: To enable the details of this specific error message to be viewable on remote machines, please create a <customErrors> tag within a "web.config" configuration file located in the root directory of the current web application. This <customErrors> tag should then have its "mode" attribute set to "Off".

我搜到一些解决方法,其中提到:
1、在你的开发环境中找到Visual Studio安装目录下的"SDK"v2.0"BootStrapper"Packages"CrystalReports,将安装文件CRRedist2010_x86.msi,复制到服务器中并安装。
可是我的vs2010里没有CRRedist2010_x86.msi这个文件啊
C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages\Crystal Reports for .NET Framework 4.0这里面是
package.xml
C:\Program Files\Microsoft Visual Studio 10.0\SDK下只有个3.5,里面有个bin文件夹,还是空的

...全文
1382 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
ydl1988915 2014-05-15
  • 打赏
  • 举报
回复
感谢阿泰,5楼的回复解决了我VS2010的WEB发布在windows2003上的问题。
阿泰 2012-04-25
  • 打赏
  • 举报
回复
web应用如果用viewer上的打印按钮,取到了也是没用的。
如果你的程序是公网,或者大内网,在这个方面上就不用做太多工作了
这个打印功能已经由客户端控件接管了,服务器端的代码上处理不到得。


对于自定义纸型,一个比较可行的方法是在服务器端导出成pdf,客户端允许在浏览器中直接预览pdf
然后依赖于pdf浏览器控件的打印功能实现自定义纸型的打印。
ttyrone 2012-04-25
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

ie打印自定义纸型这个问题目前没有完美的解决方法

就是要在操作的客户端上设置好这个纸型,打印时,手工指定纸型。
不然他就用打印机的默认设置去走了
[/Quote]

我在.rpt文件里的页面设置(rpt文件的空白处,右键,设计,页面设置)里能选到打印机和我自己自定义的打印纸,在cs文件里怎么取这两个值呢?

我现在的做法是在打印机上添加自定义纸型,然后设置为默认值,在cs文件里取打印机的默认值
PrintDocument prtdoc = new PrintDocument();
string strDefaultPrinter = prtdoc.PrinterSettings.PrinterName;
rd.PrintOptions.PrinterName = strDefaultPrinter ;
rd.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.DefaultPaperSize;
rd.PrintOptions.PaperSource = CrystalDecisions.Shared.PaperSource.Auto;

怎么样才能让rd.PrintOptions.PaperSize 取到在rpt文件里选择的自定义纸型呢?

阿泰 2012-04-25
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 的回复:]

水晶報表web功能是很差的,,,,想在客戶端完美打印是不可能,不要想,,,

有其它報表控件是完美的
http://www.stimulsoft.com/ReportsWeb.aspx
[/Quote]

呵呵。
crackdung 2012-04-25
  • 打赏
  • 举报
回复
用水晶報表在web上使用的人,,,真的有點傻
ttyrone 2012-04-25
  • 打赏
  • 举报
回复
知道了,非常感谢泰哥
crackdung 2012-04-24
  • 打赏
  • 举报
回复
水晶報表web功能是很差的,,,,想在客戶端完美打印是不可能,不要想,,,

有其它報表控件是完美的
http://www.stimulsoft.com/ReportsWeb.aspx
ttyrone 2012-04-24
  • 打赏
  • 举报
回复
啊?水晶报表一般用在winform上?
阿泰 2012-04-24
  • 打赏
  • 举报
回复
ie打印自定义纸型这个问题目前没有完美的解决方法

就是要在操作的客户端上设置好这个纸型,打印时,手工指定纸型。
不然他就用打印机的默认设置去走了
ttyrone 2012-04-24
  • 打赏
  • 举报
回复
我错了,确实是web.config的问题,不是不过水晶报表的,是reportviewer的问题
我在开发环境还试过reportviewer,服务器上没有装相应的环境,所以打开主页就报错,把web.config里reportviewer相关的语句注释掉就行了

泰哥,再请教个问题:
我之所以用水晶报表是因为ie直接打印每次都会弹出个对话框,让选择打印机和纸型。
现在装了水晶报表还是这样,还是每次打印都得手工选择打印机和纸型,因为我设置的纸型是个自定义的纸型,如果用默认的a4打,就变成横向的了,请问这个要怎么解决啊?
阿泰 2012-04-24
  • 打赏
  • 举报
回复
现在不行的具体症状是什么?
ttyrone 2012-04-24
  • 打赏
  • 举报
回复
在服务器上的添加删除程序里有:
sap crystal reports runtime engine for .net framework4 (32-bit)
ttyrone 2012-04-24
  • 打赏
  • 举报
回复
太好了,泰哥还没退隐,帮忙看看吧

我安装了CRRuntime_32bit_13_0.msi(这个也就是大家说的CRRedist2010_x86.msi吧)还是不行啊
我的开发环境是win7,服务器是2003,都是32位的系统,这有关系吗?

试了好多办法都不行,都想在服务器上装水晶报表的开发工具,结果说必须装vs。。。。。
将系统盘的C:\Inetpub\wwwroot\aspnet_client文件夹复制到服务器网站路径里!这个也试了,还是不行
将C:\Program Files\Common Files\Business Objects\2.7\Managed下面的CrystalDecisions.CrystalReports.Engine、CrystalDecisions.ReportSource、CrystalDecisions.Shared、CrystalDecisions.Web、CrystalDecisions.Windows.Forms这5个dll文件,拷贝到网站的bin目录下,也不行
阿泰 2012-04-24
  • 打赏
  • 举报
回复
1:水晶报表支持winform和webform。
2:实际上很多人在用webform(说明一下,很多人的意思是用水晶报表的人里面的大部分,并不指实际用户多),因为现在的很多系统也基本上都在往bs上走
3:你连部署包都没安装。。自然不会运行啊。你的开发机器上能正常执行,是因为你按照了水晶报表的开发包啊,呵呵

水晶报表的完整开发包在下面这个链接,你要的在这个链接的下面部分。找打合适自己的msi装上试试。
http://wiki.sdn.sap.com/wiki/pages/viewpage.action?pageId=56787567
ttyrone 2012-04-23
  • 打赏
  • 举报
回复
web.config的问题?我把原来老的web.config替换上去就能打开网站,可是加了水晶报表的web.config在我开发的这台电脑上调试没有问题啊
crackdung 2012-04-23
  • 打赏
  • 举报
回复
很少人用在web,這個問題好像沒有解決過
ttyrone 2012-04-23
  • 打赏
  • 举报
回复
这是打不开主页的web.config文件

<?xml version="1.0"?>

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<configSections>
<sectionGroup name="businessObjects">
<sectionGroup name="crystalReports">
<section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null"/>
</sectionGroup>
</sectionGroup>
</configSections>
<appSettings>
<add key="CrystalImageCleaner-AutoStart" value="true" />
<add key="CrystalImageCleaner-Sleep" value="60000" />
<add key="CrystalImageCleaner-Age" value="120000" />
<add key="ChartImageHandler" value="storage=file;timeout=20;dir=c:\TempImageFiles\;" />
</appSettings>
<connectionStrings>
<add name="connstr" connectionString="server=.;database=test;uid=sa;pwd=;"/>
</connectionStrings>

<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="CrystalDecisions.CrystalReports.Engine, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportSource, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Shared, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="Microsoft.Build.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Management, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></assemblies>
<buildProviders>
<add extension=".rpt" type="CrystalDecisions.Web.Compilation.RptBuildProvider, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
</buildProviders>
</compilation>
<authentication mode="Windows"/>
<httpHandlers>
<add path="CrystalImageHandler.aspx" verb="GET" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" />
<add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
validate="false" />
<add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
validate="false" />
</httpHandlers>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312"/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID">
<controls>
<add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting"
assembly="System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</controls>
</pages>
<sessionState mode="InProc" timeout="120"/>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<handlers>
<remove name="ChartImageHandler" />
<add name="CrystalImageHandler.aspx_GET" path="CrystalImageHandler.aspx"
verb="GET" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=13.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"
preCondition="integratedMode" />
<add name="ChartImageHandler" preCondition="integratedMode" verb="GET,HEAD,POST"
path="ChartImg.axd" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</handlers>
</system.webServer>
<businessObjects>
<crystalReports>
<rptBuildProvider>
<add embedRptInResource="true"/>
</rptBuildProvider>
</crystalReports>
</businessObjects>
</configuration>


这是能打开主页,但是用不了水晶报表的web.config

请高手帮忙看看,谢谢

<?xml version="1.0"?>

<configuration>
<appSettings>
<add key="cn.com.webxml.webservice.WeatherWS" value="http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx"/>
</appSettings>
<connectionStrings>
<add name="connstr" connectionString="server=.;database=test;uid=sa;pwd=;"/>
</connectionStrings>
<system.web>
<customErrors mode="On" defaultRedirect= "generalerror.aspx"/>

<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>

<authentication mode="Windows"/>


<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312"/>
<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>

<sessionState mode="InProc" timeout="120"/>


</system.web>
</configuration>

4,818

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧