【问题标题】:Find all SSRS reports using the same shared dataset使用相同的共享数据集查找所有 SSRS 报告
【发布时间】:2014-11-10 10:29:09
【问题描述】:

我一直试图找出什么(如果有的话)正在使用特定的数据库表,以便我可以更新它。
我找到了一个访问该表的存储过程,SSRS 实例将其用于共享数据集。我有一份 SSRS 解决方案的副本,当我在 VS2008 中打开它时,我可以看到数据集。此解决方案中还有 18 个报告。当我右键单击并在任何共享数据集上选择 find usages 时,它只会显示 "Usages of blah.rsd was not found"
我可以单独打开每个报表并检查每个报表上的数据集,看看它们是否与共享数据集匹配,但这似乎很荒谬。

肯定有更简单的方法来查找共享日期集的用法吗?

【问题讨论】:

    标签: visual-studio-2008 reporting-services ssrs-2008 bids


    【解决方案1】:

    下面的查询显示了同一项目中使用共享数据集的所有报表。有关Catalogtype 列的说明,请参阅msdn 论坛中的link,其中他们还毫无帮助地提到不支持直接查询数据库...

    select c.Name as ReportName, c.Path 
      from Catalog c
      join DataSets ds on c.ItemID = ds.ItemID                 --all reports datasets (including those created from shared datasets)
      join Catalog c2 on ds.LinkID = c2.ItemID and c2.Type = 8 --all shared datasets
      join Catalog c3 on c.ParentID = c3.ItemID                --the project dataset object
      join Catalog c4 on c3.ParentID = c4.ItemID               --the project object
     where c2.Name = 'MySharedDatasetName' and c4.Name = 'MyProjectName'
    

    感谢s_f 引导我朝着正确的方向前进!

    【讨论】:

      【解决方案2】:

      您可以在 ReportServer DB 上运行此查询:

      select c.Name, c.Path 
      from dbo.DataSets ds
      inner join dbo.Catalog c
          on ds.ItemID = c.ItemID
      where ds.Name like 'yoursDSname'
      

      【讨论】:

      • 嗨@s_f 这只是给我数据集,而不是共享数据集。但是谢谢,因为它让我找到了真正的答案!
      猜你喜欢
      • 1970-01-01
      • 2017-02-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-03
      • 2021-06-22
      相关资源
      最近更新 更多