2010-02-12 65 views
1

我有一個包含Word文檔鏈接的報告。我在跳轉到URL的文本框上創建了一個Action,其中填充了URL。跳轉到URL不起作用

我有一個PerformancePoint儀表板顯示的報告,這是在使用SharePoint集成報表的報表庫。

該鏈接無法正常工作。按照this guy的建議,我將我的鏈接與javascript在新窗口中打開。

除了最終結果之外,它在其他地方都可以使用。該鏈接從BIDS,儀表板設計器和報告庫中運行。它無法從部署到SharePoint網站的儀表板內部工作。有任何想法嗎?

編輯: 此HTML鏈接:

=First(Fields!Link.Value, "MyUrl") 

讓我這個在生成的報表:

<TD style="WIDTH:53.98mm;word-wrap:break-word;HEIGHT:6.35mm;" class="a7">Click Me!</TD> 

這個Javascript鏈接:

="javascript:window.location.href='" & First(Fields!Link.Value, "MyUrl") & "';" 

讓我這個在渲染報告:

<a tabindex="40" href="javascript:window.location.href='http://example.com/sites/some/subsite/DocumentLibrary/Folder/MyDocument.doc';" style="color:Blue" TARGET="_top">Click Me!</a> 

單擊它時什麼也不做。

回答

1

事實證明,有兩個問題正在進行。

我在渲染使用https://example.com/鏈接第一次嘗試......沒有工作,因爲2005年的報告拒絕服務鏈接到HTTPS網站。 (無源出於此信息,只是通過實驗確定)

我的第二次嘗試在把JavaScript的周圍的鏈接失敗,因爲2007年的PerformancePoint儀表板不會從報表執行JavaScript。 (無源出於此信息,只是通過實驗確定)

的解決方案是回到一個直HTML的解決方案,並使用HTTP。這會重定向到https並加載文檔。如果您的環境不會自動重定向http - > https,則此解決方案可能無法正常工作。

我沒有提到的HTTPS在我原來的問題,因爲我不知道,會有所作爲。

1

我不熟悉的PerformancePoint,但你寫JavaScript的方式好像你簡化了一點?我在問,因爲唯一的方法,即完美的罰款鏈接將無法正常工作,如果頁面中的鏈接返回false。嘗試整個改變URL移動到一個功能,如:與鏈接存在

<script type='text/javascript'> 
function goTo(url) { 
    window.event.stopPropagation(); // cancelBubble() in IE 
    location.href = url; 
    return false; 
} 
</script> 

="javascript:goTo('" & First(Fields!Link.Value, "MyUrl") & "')" 

,並做GOTO功能內部的一些試驗和錯誤,遺憾沒能幫助你更確切地說。嘗試在第二個瀏覽器中進行測試(如果您還沒有),看看這是否是某種特定於瀏覽器的行爲。

+0

我認爲PerformancePoint是這不起作用的重要組成部分。正如我所說,如果我直接去報告庫中的報告,它工作正常。這是在PerformancePoint儀表板中呈現報表時停止工作的時間。 –

+0

但是,一旦鏈接以您粘貼輸出HTML(即來自儀表板右側?)的方式呈現,那麼沒有任何東西可以阻止它發射除鏈接以外可能的鉤子,如果儀表板輸出爲您的href =「javascript:etc 「如果你停止Bubble事件,它可能會起作用。 –