代码之家  ›  专栏  ›  技术社区  ›  Mike

上传报表所有者名称错误时的SSRS

  •  0
  • Mike  · 技术社区  · 6 年前

    我有SQL 2014 professional版本12.0.5000.0,运行SSRS。eI已经在report builder 3.0中创建了一个报告,它可以工作并运行find。

    但是,当我创建订阅和运行时,我得到的用户A1234(例如)不存在。

    我看没有用户添加到SSRS或在我们的域名。

    我的用户名是ah1234(例如)

    我看了一下订阅表,主人是我吗?但是,订阅显示所有者是a1234?

    我查了一下我上传的报告,上面说主人是1234。

    我认为这可能是一个活动目录问题,但不确定。

    以前有人看过吗?如果有,我如何修复订阅的所有者名称?

    1 回复  |  直到 6 年前
        1
  •  1
  •   MandyShaw    6 年前

    我不知道SSRS是如何损坏所有者名称的,但这里有一个技巧(写在2008 R2上)来更正所有者名称(当人们离开时我使用这个技巧,当他们的Active Directory用户id被删除时,离开将不会运行的孤立子系统)。

    请注意,它会更新Microsoft提供的订阅表,您可能不希望这样做。

    首先标识发件人和收件人的SSRS所有者id(您可能需要让收件人先创建订阅):

    SELECT distinct [OwnerID], u.username 
      FROM [<ssrs-database>].[dbo].[Subscriptions] s 
      join [<ssrs-database>].[dbo].[Users] u on s.ownerid = u.userid 
    

    现在制作订阅列表的安全副本,例如:

    SELECT * into temp.subscriptionscpy 
      FROM [<ssrs-database>].[dbo].[Subscriptions] s 
    

    现在进行更改,例如(此项更改所有相关子公司的所有者):

    update [<ssrs-database>].[dbo].[Subscriptions] 
      set ownerid = 'DDD87598-8957-42C8-8DBC-A893E7174CB6'
      where ownerid = 'EBF0E483-69E6-4458-B171-BA28FFCCDF3F' 
    

    现在检查一下主人是否是你想要的。