SSRS上载报告所有者名称时错误

时间:2018-07-25 18:40:27

标签: reporting-services reportbuilder3.0

我有运行SSRS的SQL 2014专业版12.0.5000.0。我已经在Report Builder 3.0中创建了一个可以运行并运行find的报告。

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

我发现在我们的域中没有将该名称添加到SSRS的用户。

我的用户名是ah1234(例如)

我在订阅表中查找,所有者是我吗?但是,订阅显示的所有者为a1234?

我检查了上载的报告,报告说所有者是a1234。

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

如果可以的话,是否有人可以看到此内容?

1 个答案:

答案 0 :(得分:1)

我不知道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' 

现在检查所有者是否符合您的要求。