2011-04-01 66 views
2

我需要拉一些報道說,生活在一個SQL Server報表服務器從一個Ruby的Web應用程序。是否有任何工具可以將MS SQL Server Reporting與Ruby集成?

這怎麼辦?

+1

我對Ruby並不是特別熟悉,但我知道RS公開了一些可用於執行報告並以給定格式(例如PDF)返回結果的Web服務。可能是一個探索的方向。 – Rozwel 2011-04-01 19:42:21

+0

@Rozwel謝謝!我想我可能不得不走這條路,但我只想問社區是否有類似於.Net ReportViewer類的工具。最終用戶可以導航,打印或導出報告,而無需重新發明輪子。 – 2011-04-01 19:52:54

回答

1

沒有什麼出有預建,我所知道的是,但你必須集成一些選項。

最簡單的,如果用戶有到RS服務器的直接訪問,是剛剛重定向或將它們鏈接到使用其基於URL的策略,可能打開一個新窗口中打開報告。如果用戶沒有直接訪問,你仍然可以使用基於URL的策略,但對從您的Rails應用程序到MS Reporting Services服務器後端的請求,並傳輸所有報告字節通過瀏覽器:

open("http://ReportServer/reports?querystringxxxx") { |f| 
    @response = f.read 
} 

這被徹底簡化,當然。您需要特別注意您的內容類型,以確保瀏覽器正確解釋內容。

下一個選項是使用其Web服務API,但除非你特別需要先進的功能,我想說的URL/REST爲基礎的方法是遠遠簡單。

如果你得到它的工作,藉此機會嘗試創建第一個寶石,把它掛在github上,然後也許別人會用它第一天開始... :)

1

基於REST的方法只適用於沒有參數的報告。

如果報告具有參數,則需要使用Web服務API,這是一個基於SOAP的界面,需要您將請求(使用參數)解析爲XML,並將請求發送到MSSRS。

根據我的同事,誰做到了這一點,它實際上是非常麻煩的。

相關問題