2016-04-28 72 views
0

我擁有的是現成的產品,允許一些最小的自定義。我正在嘗試創建一個sql腳本來顯示作爲圖像存儲在數據庫中的pdf。創建超鏈接以顯示存儲在SQL Server中的PDF

在下面的例子中,我試圖爲各種文檔創建一個網格視圖,以供用戶查看。除了附件字段外,它都可以工作。這是一個只顯示二進制數據的圖像字段。我想讓它顯示一個鏈接,並在點擊它時在Adobe上打開它。 我運行SQL Server 2012

select nm.id_num,nm.first_name, nm.last_name, 
'<a href="https://myvista.rvu.edu/ICS/Portlets/CUS/ICS/ 
Jenzabar.ContainedForm/Views/ ReportWindow.aspx?SubmissionID=' 
+ convert(nvarchar(36), SubmissionID) + '">supplemental app</a>' 
as [Supplemental app], 
attachment 
from name_master nm 
    join [ICS_NET].[dbo].[fwk_user] fu on fu.hostid=nm.id_num 
    join [ICS_NET].[dbo].[CF_Submissions] s on s.userid=fu.id 
    join attachments a on a.id_num=nm.id_num 
where [email protected]@HostID 

回答

0

我可以分享一下我在過去做了一個例子...

首先,創建一個像這樣的HTTP鏈接場...忽略如果您不需要爲不同的環境提供不同的鏈接,則可以使用case語句。

,case 
     when @@SERVERNAME like '%CF-PROD%' then 'http://cf-prod-crm01:5559/crm.ashx?id=' + CAST(c.OpportunityID as varchar(36)) 
     when @@SERVERNAME like '%CF-STG%' then 'http://cf-stg-crm01:5559/crm.ashx?id=' + CAST(c.OpportunityID as varchar(36)) 
     when @@SERVERNAME like '%CF-QA%' then 'http://cf-qa-crm01:5559/crm.ashx?id=' + CAST(c.OpportunityID as varchar(36)) 
     when @@SERVERNAME like '%CF-DEV%' then 'http://cf-dev-crm01:5559/crm.ashx?id=' + CAST(c.OpportunityID as varchar(36)) 
     END AS 'CRMOpportunityLink' 

要測試,此鏈接應該工作,如果您要將其複製並手動放入您的特定應用程序的瀏覽器。

在一份報告,如SSRS,您可以使用文本框在操作區域創建超鏈接,請選擇「轉到URL」,並插入表達如下:

"javascript:void(window.open('" + Fields!CRMOpportunityLink.Value + "','_blank'))")