此处的DBA维护所有SQL Server和SQL Reporting服务器。我在Visual Studio中有一个自定义开发的SQL Reporting 2005项目,可以在本地SQL数据库和Reporting实例上正常运行。我需要部署到生产服务器,因此我在SQL Reporting 2005服务器上创建了一个具有上传文件权限的文件夹。通常,仅需从Visual Studio进行部署即可上载报告文件。
但是,出于安全目的,数据源由DBA显式维护,并存储在报表服务器上单独的锁定的公用文件夹中。我让他们为我创建数据源。
当我尝试从VS部署时,它给了我错误
项目“ /数据源”已存在。
无论是部署整个项目还是仅部署单个报告文件,我都可以理解。我已经OverwriteDataSources=false在项目属性中设置了。已验证TargetServer URL和文件夹正确。
我想我可以手动复制文件,但是我希望能够在VS中进行部署。我可能做错了什么?
将一个名为ConnectionString的字符串参数添加到您的报告中并保存。接下来,在文本编辑器中打开RDL并更改数据源定义,如下所示。
<DataSources>
<DataSource Name="preserve the datasource name you've been using">
<ConnectionProperties>
<DataProvider>SQL</DataProvider>
<ConnectString>=Parameters!ConnectionString.Value</ConnectString>
</ConnectionProperties>
<rd:DataSourceID>preserve your existing GUID</rd:DataSourceID>
</DataSource>
</DataSources>
现在,您可以将数据库连接字符串作为报告参数传递。请注意不要向您的DBA提及这一点,因为SSRS安全系统中没有控制此的规定,当他们发现不仅笼门打开而且无法关闭时,他们也会完全生气。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。