如何将数据源添加到ssrs中的代码?

时间:2013-02-27 19:19:53

标签: sql sql-server tsql reporting-services

创建共享数据源时,会将其放在报告代码中:

 <DataSources>
    <DataSource Name="KISdfgdfgQL1">
      <DataSourceReference>KISdfgdfgQL1</DataSourceReference>
      <rd:SecurityType>None</rd:SecurityType>
      <rd:DataSourceID>45ad295c-cc2f-438sdfsdf3833230</rd:DataSourceID>
    </DataSource>
  </DataSources>

我刚刚创建了一个新的数据源,并希望在现有报告中使用它。

当我尝试部署解决方案时,我收到此消息:

Error   1   [rsInvalidDataSourceReference] The dataset ‘Community’ refers to the data source “my_new_datasource”, which does not exist. 

我确实创建了新的datsource,但是,它没有在代码中为它创建标记:

<rd security type...
< datasource id...

如何强制SSRS使用我创建的这个新数据源?

即时通讯使用vs 2010

1 个答案:

答案 0 :(得分:1)

通常当您使用共享数据源部署到SSRS服务器时,我发现如果您引用由于更改而尚未部署的内容,它将会爆炸。如果您更改现有的共享数据源,它可能会爆炸,因为SSRS部署的默认行为是不覆盖数据源。即使您已经存在共享数据源。我不确定,但这可能是由于您的共享数据源的“别名”的命名不同,或者只是任何更改都可能更改数据源的GUID。您可以通过以下方式手动修复此问题:

  1. 在托管报告的SSRS服务器上打开报告。 (即使它是炸弹)通常它是在http://(服务器)/(报告)/(报告路径)之类的地方。
  2. 您可以在报告参数的正上方看到或查看带有该报告名称的超链接,点击它
  3. 您现在拥有一个管理屏幕。点击“数据来源”
  4. 如果您有共享数据源,则会突出显示标有“共享数据源”的单选按钮。 (你可能有一个或多个)
  5. 如果您的数据源不起作用,请点击“浏览”手动点击它。通常,默认部署位于SSRS站点根目录下的“数据源”下。
  6. 获得正确的数据源后,单击“确定”。
  7. 当您返回“数据源”屏幕时,请勿忘记在下一个窗口中点击。
  8. (可选)如果您的数据源已存储凭据,则可以进行测试。
  9. 如果这不起作用,我建议重新部署共享数据源(如果这不是生产环境,并且不会损害任何内容)。当您对SSRS服务器进行更改时,使SSRS服务器与共享数据源和共享数据集一起使用有时很容易,但通常只需稍作更改就会使新报告或现有报告生气。我的一般规则是让您的共享数据源/集正确,并且不会永远更改它们。当您向混音添加源控件时,情况会变得更糟。