CrystalReports在MOSS中的应用
VS2005中自带了新版本的CrystalReports,比2003下好用了点,因为要在MOSS下_layouts路径的自定义工程中使用报表功能,考虑到CrystalReports比ReportingService稍微好控制点,而且数据展示又不是特别复杂,所以考虑用CrystalReports先了.
连接数据源,设计好报表模板,预览成功,编译打开页面发现所有的图片没有了,看属性都在此路径下:/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer3/,基本的CSS 样式也丢了,去WWWROOT下面看看,C:\Inetpub\wwwroot\aspnet_client\system_web\2_0_50727\CrystalReportWebFormViewer3下的确有这些文件,但是C:\Inetpub\wwwroot\wss\VirtualDirectories\80\aspnet_client\system_web\2_0_50727下就没有了,拷贝前面目录下的所有文件到此路径下就OK 了,原来CrystalReports这家伙在我的页面Title 标签中用了相对路径了:<link href="/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer3/css/default.css" rel="stylesheet" type="text/css" /> ,简单的改改就可以了,特别是我们自己定义的报表样式!
如果遇到报表加载失败,可以考虑下面方案:
<SafeControl Assembly="CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="CrystalDecisions.Web" TypeName="*" Safe="True" />
<SafeControl Assembly="CrystalDecisions.Shared, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="Microsoft.ReportingServices.SharePoint.UI.WebParts" TypeName="*" Safe="True" />
<SafeControl Assembly="CrystalDecisions.ReportSource, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="CrystalDecisions.ReportSource" TypeName="*" Safe="True" />
添加到当前MOSS站点的web.config文件的<SafeControl >节中。
连接数据源,设计好报表模板,预览成功,编译打开页面发现所有的图片没有了,看属性都在此路径下:/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer3/,基本的CSS 样式也丢了,去WWWROOT下面看看,C:\Inetpub\wwwroot\aspnet_client\system_web\2_0_50727\CrystalReportWebFormViewer3下的确有这些文件,但是C:\Inetpub\wwwroot\wss\VirtualDirectories\80\aspnet_client\system_web\2_0_50727下就没有了,拷贝前面目录下的所有文件到此路径下就OK 了,原来CrystalReports这家伙在我的页面Title 标签中用了相对路径了:<link href="/aspnet_client/System_Web/2_0_50727/CrystalReportWebFormViewer3/css/default.css" rel="stylesheet" type="text/css" /> ,简单的改改就可以了,特别是我们自己定义的报表样式!
如果遇到报表加载失败,可以考虑下面方案:
<SafeControl Assembly="CrystalDecisions.Web, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="CrystalDecisions.Web" TypeName="*" Safe="True" />
<SafeControl Assembly="CrystalDecisions.Shared, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="Microsoft.ReportingServices.SharePoint.UI.WebParts" TypeName="*" Safe="True" />
<SafeControl Assembly="CrystalDecisions.ReportSource, Version=10.2.3600.0, Culture=neutral, PublicKeyToken=692FBEA5521E1304" Namespace="CrystalDecisions.ReportSource" TypeName="*" Safe="True" />
添加到当前MOSS站点的web.config文件的<SafeControl >节中。
msn: pccai1983@hotmail.com