1

我的报告有一些问题,因为我已将它们更新为 VS2010 格式。

即使我已将 Microsoft.ReportViwer.Common 和 Microsoft.ReportViewer.WinForms 的引用从 v9 修改为 10,但当我尝试键入代码时。在一个字段中,“代码”之后是什么。总是用红色下划线,当我打印报告时,我得到#ERROR 而不是我想要的值。我知道它区分大小写,我多次检查拼写。

此外,我不知道为什么,但我的字段有错误!句法; 我似乎必须使用 Fields().value 让它们工作(在我不需要调用自定义代码的地方)

这些报告在转换之前运行良好(超过 20 份报告以这种方式转换),但现在不行。似乎报表设计器没有“看到”自定义函数。我试图将它们公开、共享;我所拥有的只是同样愚蠢的#ERROR 显示。

我希望他们在 VS2010 中工作,以避免总是不得不在 VS2008 中修改它们然后在 VS2010 中返回

这是一个带有框架 3.5 的 winform 应用程序

知道什么可能导致这种情况以及补救措施是什么?

非常感谢

尼科

4

1 回答 1

0

有几种方法可以在 SSRS 中使用自定义代码。首先你可以在报表->报表属性->代码下的窗口中直接进入VB

另一种方法是编写自定义 DLL(当然可以用任何 .NET 语言完成),然后需要将其复制到您的开发机器和生产报表服务器。然后,您需要在项目中创建对该程序集的引用:报告 --> 报告属性 --> 引用(我假设您知道这一点)。

如果您没有使用自己的自定义程序集,而只是在您的机器上使用对某个程序集的引用,那么服务器上可能会对在哪里找到 dll 感到困惑。您可能需要将 DLL 复制到以下 KB 链接中所示的文件夹中:

http://support.microsoft.com/kb/920769

当您将字段拖到 tablix 或文本框上并查看值表达式时,它是否使用 Fields!Fieldname.Value 语法?这种语法对 SSRS 来说是很自然的,所以如果这不起作用,它听起来像是你的 Visual Studio 2010 中严重损坏的东西。我认为您安装了 Visual Studio 2010 来创建 Web 应用程序。您没有解释的是您使用的是哪个版本的 BIDS 或 SSDT。如果您正在为 SSRS 2008 R2 或更早版本开发报告,那么这些报告与 Visual Studio 2010 不兼容。那里没有妥协。

如果您正在为 SSRS 2012 开发,那么您正在使用 SSDT 本身(安装 Visual Studio 2010 的外壳版本)或者如果您已经有 Visual Studio 2010,那么您需要为 VS2010 安装服务包 1,然后从SQL Server 2012 光盘。

http://msdn.microsoft.com/en-us/library/hh500335(v=vs.103).aspx

于 2012-10-09T05:50:51.037 回答