2009-08-06 65 views
1

我正在研究創建自定義報表生成器和數據工具來替換ssrs報表生成器的想法。SQL Server Reporting Services - 報表模型:API(構建自定義報表生成器)

我想要更像查詢生成器和數據導出工具而不是報告。

我想使用的是報告模型。我希望用戶從報表模型中選擇字段,呈現sql,然後執行sql並返回數據。

報表生成器如何使用報表模型? 它只是提供模式和報告生成器生成實際的SQL? SQL如何生成,服務器或客戶端。

我該如何讓用戶可用的字段以及如何獲得用戶所選字段的sql?

回答

3

我真的不認爲這值得去做。升級到SQL 2008並使用Report Builder 2.0會更好。

但是...您可以非常輕鬆地使用SSRS提供的Web服務獲取報表模型的XML,然後您可以使用它作爲ORM的一種形式以獲得LINQ發生的環境。

我只是不認爲這是真的值得。

4

我同意羅布。我不認爲這種努力是值得的。

說到這一點,我可以提供一些關於此的部分信息。使用Report Builder 2.0創建報表時,會在數據集內創建一個語義查詢,該查詢可以針對報表模型執行。

從一個高層次的報表模型的查詢看起來像它下面:

<SemanticQuery xmlns="http://schemas.microsoft.com/sqlserver/2004/10/semanticmodeling" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rb="http://schemas.microsoft.com/sqlserver/2004/11/reportbuilder" xmlns:qd="http://schemas.microsoft.com/sqlserver/2004/11/semanticquerydesign"> 
    <Hierarchies> 
    <Hierarchy> 
     <BaseEntity> 
     </BaseEntity> 
     <Groupings> 
     </Groupings> 
     <Filter> 
     </Filter> 
    </Hierarchy> 
    </Hierarchies> 
</SemanticQuery> 

因爲從報表模型報表中創建的報表可以保存到報表服務器,它可以假設,報表模型在報表服務器上處理。然後在報告服務服務中生成SQL。

相關問題