begin tran
update dbo.DataSource
set Link = c.ItemID
from dbo.DataSource ds
inner join dbo.Catalog c
on ds.Name = c.Name
and c.Type = 5
where ds.link is null
select ds.Link oldlink, c.ItemID
from dbo.DataSource ds
inner join dbo.Catalog c
on ds.Name = c.Name
and c.Type = 5
--where ds.link is null
select *
from dbo.DataSource ds
where ds.link is null
rollback tran
-- commit tran
4 回答
如果您使用的是报表服务器,请执行以下步骤:
请确保您使用的是IE版本,但无法在Chrome中正常使用
转到报表服务器
单击报告名称右侧的黄色箭头
点击'Manage'
点击'DataSources'
确保凭据/数据源设置指向正确的位置 .
由于凭据问题或数据源的设置方式,您会惊讶地发生这种情况 .
如果没有关于您正在使用哪种服务器的更多信息,这是我能想到的全部建议 .
我试过这个解决方案: -
再次将所有数据源和报告部署到报告服务器 .
这个解决方案解决了我的问
我可以通过使用下面的T-SQL更新数据源链接来批量更新和修复问题 .
http://tsqlblog.blogspot.co.uk/2011/05/rsinvaliddatasourcereference-on.html
最初我使用了指向本地数据库的Datasourse . 当我在服务器上创建远程ssrs并重新编写项目时,我手动更改共享数据源 .
就像我使用共享数据源一样,每个报告都有这个共享数据源的链接 . 问题是此链接指向旧版本的数据源 .
解决问题我刷新了新数据源的链接