0
我想从我所有的SSRS报告中提取sql,所以我可以看到使用了哪些数据库表和columsn。有没有人知道如何做到这一点,如果你有50个报告?是否有任何我曾忽略的现有功能?从SSRS报告中提取sql
我想从我所有的SSRS报告中提取sql,所以我可以看到使用了哪些数据库表和columsn。有没有人知道如何做到这一点,如果你有50个报告?是否有任何我曾忽略的现有功能?从SSRS报告中提取sql
RDL文件是简单的XML文件。你可以创建一个简单的解析器来提取你想要的信息。如果您现在无法访问RDL文件,则可以通过SSRS Web界面下载它们。
下面是一个RDL文件的相关部分的摘录:
<DataSets>
<DataSet Name="Test">
<Fields>
<Field Name="Testfield">
<DataField>Testfield</DataField>
<rd:TypeName>System.DateTime</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>MyDataSource</DataSourceName>
<CommandType>StoredProcedure</CommandType>
<CommandText>spMyGreatStoredProcedure</CommandText>
<QueryParameters>
<QueryParameter Name="@param1">
<Value>=Parameters!Param1.Value</Value>
</QueryParameter>
<QueryParameter Name="@param2">
<Value>=Parameters!Param2.Value</Value>
</QueryParameter>
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
</DataSet>
</DataSets>
有一个或多个DataSet
块,它定义了报告中的一个数据集。首先,定义所有字段,然后使用其参数进行查询。
如果您尝试以编程方式提取所有查询,答案是没有任何这样的功能。如果您的意思是在不打开Visual Studio的情况下从.rdl文件提取查询,则可以使用文本编辑器打开所有文件。 – mordack550
刚发现这个。 http://bretstateham.com/extracting-ssrs-content-using-the-ssis-%E2%80%9Cexport-column%E2%80%9D-component/ –
所有SSRS报告是否在2008年和2012年ReportServer数据库中列出? –