2012-09-05 90 views
1

由於我已將其更新爲VS2010格式,因此我的報告存在一些問題。RDLC 2005轉換爲RDLC 2008:自定義代碼不再「已見」

儘管我已經修改了對於Microsoft.ReportViwer.Common和Microsoft.ReportViewer.WinForms從v9到10的引用,當我嘗試鍵入代碼時。在一個字段中,「代碼」之後是什麼。總是用紅色加下劃線,我打印報告時得到了#ERROR而不是我想要的值。我知道它是區分大小寫的,我多次檢查拼寫。

此外,我不知道爲什麼,但我與領域的錯誤!句法;我似乎必須使用Fields()。值來讓它們工作(在我不需要調用自定義代碼的地方)

這些報告在轉換之前運行良好(超過20個報告以此方式轉換)但現在不要。似乎自定義函數並未被報表設計器「看到」。我試圖讓他們公開,分享;我所有的都是同樣愚蠢的#ERROR顯示。

我希望他們能在VS2010工作,以避免總是不得不修改它們在VS2008,然後回去VS2010

這是一個與框架3.5

什麼可能導致的任何想法,什麼是WinForm應用程序是補救措施?

非常感謝

尼科

回答

0

有一對夫婦的方式來使用自定義代碼在SSRS。首先,您可以直接在窗口下方輸入VB到 報告 - >報告屬性 - >代碼

另一種方法是編寫自定義DLL(當然可以用任何.NET語言完成),然後需要被複制到你的開發機器和生產報告服務器。 然後,您需要使用創建的項目到集引用: 報告 - >報告屬性 - >參考(我假定你知道這一點)。

如果您沒有使用自己的自定義程序集,並且只使用對您機器上的引用,那麼服務器上可能會出現一些混淆,以至於在哪裏可以找到dll。您可能需要的DLL複製到文件夾下面的KB鏈接指出:

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

當您將一個字段到表矩陣或文本框,並看看值表達式,它使用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的Service Pack 1,然後從SQL Server 2012光盤安裝SSDT。

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