2014-02-17 30 views
0

在Visual Studio 2010中,我有一個餅圖,點擊圖表後,使用操作轉到URL來顯示報告。將服務器名稱用作SSRS中的轉到URL的參數

如果服務器名是硬編碼的,這意味着無論我處於哪個環境(即在測試服務器上,鏈接仍爲實時報告),我都會顯示相同的報告。

我想使用一個參數,但是,儘管廣泛的谷歌搜索,我無處可去。

例如,我已經修改了轉到URL,這樣它開始是這樣的: = 「JavaScript的:無效(window.open('HTTP://」!&參數MyServerName.Value &「

我添加了一個報告放慢參數@MyServerName其中可用值= none和默認值= = MID(全局ReportServerUrl,8,INSTR(全局ReportServerUrl, 「/」) - !8)

然而,在預覽我得到錯誤「reprt參數'ServerName'的DefaultValue表達式包含一個錯誤:參數'Length'必須大於或等於零。」

如果有人能糾正這個或提供更好的方法我將不勝感激!

我也嘗試使用= @@ servername作爲默認值,但出現錯誤「[BC30201]表達式預期。」

我也可以使用轉到報告,但它並沒有給我的控制,JavaScript的。

+0

請分享網址,你需要爲參數的默認值是什麼部的一個例子。 – KrazzyNefarious

+0

嗨,實際的網址並不重要。我想要參數化的位是服務器名稱。例如如果一臺服務器稱爲Fred,另一臺稱爲Bill,則不要手動更改http://Fred.company.com/ReportServer/ ....和http://Bill.company.com/ReportServer/之間的URL。 ...報告會自動提取所需的服務器名稱並將其插入到URL中(如我的OP所示)。謝謝。 – user3170046

+0

再次舉例,使用空格插入來停止超鏈接!例如如果一臺服務器稱爲Fred,另一臺稱爲Bill,則不用手動更改「http://Fred.company.com/ReportServer/ ....」和「http://Bill.company.com/」之間的URL ReportServer/....「報告會自動選擇所需的服務器名稱並將其插入到URL中(如我的OP所示)。 – user3170046

回答

0

請嘗試以下方法:

而不是使用參數,創建報表變量(報表屬性... - >變量)以下表達式:

=Iif(String.IsNullOrEmpty(Globals!ReportServerUrl), "default_server_name", Replace(Globals!ReportServerUrl, "http://", "")).Split("/").GetValue(0)

替換爲default_server_name您的開發服務器主機名,以便它在預覽模式下正常工作。

希望它有幫助。

問候,

阿列克謝

+0

非常好,謝謝! – user3170046

相關問題