2015-09-05 47 views
1

我正在使用報表生成器3.0(非常類似於SQL Server報表服務)爲使用SQL Server 2012數據庫的應用程序上的用戶創建報表。使用報表生成器創建共享數據源的最佳方法

要設置場景,我們有一個超過1200個表的數據庫。我們實際上只需要其中約100個用於報告目的。但是,我們需要將來自多個表格的字段組合在一起以獲取我的同事和我需要的用於報告的數據的共同資源是非常常見的。

例如,如果我想要一個客戶的視圖,我想從customer_table中獲取有關該客戶的信息,從Phone表中獲取有關其電話詳細信息的信息,以及從該帳戶表中獲取有關其帳戶的信息以及等等。然後,我可能需要另一個帳戶的視圖 - 帳戶類型,各種餘額數量,開放日期,狀態等

我想做的是創建一個「客戶視圖」,我們將所有這些領域合併成一個單一的組合虛擬表。然後我們有一個「帳戶視圖」。它會更容易使用,更易於管理等。然後我們將這個用於我們所有的報告。而且,當我們需要時,我們可以將客戶和帳戶視圖組合在一起,以便將報表和實際表格合併到一個組合數據集中以用於報表。

我不確定正確的做法。

我看到我可以創建一個數據源。這看起來不正確,因爲這似乎是在處理2個或更多數據庫時可能做的事情。我們只使用1個數據庫。

然後有報告模型。看起來這些正在被淘汰和淘汰,所以這似乎不是一個好的選擇。

最後我看到我們可以創建共享數據集。然而,這個選項(據我所知)不允許我將它與另一個數據集結合起來。因此,使用上面的示例,我將無法將客戶視圖和帳戶視圖與此方法結合使用,以用於報告顯示有關客戶及其帳戶的詳細信息。

希望瞭解的最佳方式的指導,實現什麼,我試圖做...

感謝

回答

0

我只能從個人的經驗說,但使用的數據源的做法一直很好我們的目的。我們有一個包含50多個表的單個數據庫。這是作爲項目中的共享數據源鏈接的,因此可供所有50多份報告使用。

然後,我們使用存儲過程使數據庫中的信息可用於報告,每個報告都有自己的存儲過程,它根據需要連接儘可能多的表以提供報告數據。使用Stored Procedures的優點還允許您僅返回感興趣的行,而不是整個表。

我不確定這是否是您之後的答案,但描述了我們如何解決類似(較小)的問題。

相關問題