【问题标题】:SSRS shared data source to SSAS and MDX querySSRS 共享数据源到 SSAS 和 MDX 查询
【发布时间】:2010-02-17 02:12:19
【问题描述】:

我正在尝试将连接到 SSAS 多维数据集的报表部署为共享数据源。我遇到的问题围绕着这样一个事实,即即使我更改了 SSAS 连接字符串中的初始目录,rdl 文件中的所有 MDX 查询仍然按名称引用旧的 SSAS 多维数据集。

这是一个特殊的问题,因为这些多维数据集名称会经常更改(对于我们安装软件的几乎每个客户端来说都会有所不同)。如果开发人员用于编写报告的多维数据集的名称在查询中是硬编码的,那么在尝试部署之前,最好的方法是在 rdl 文件中进行一些搜索/替换吗?

以下是 MDX 更简单查询之一的示例:

WITH MEMBER [Measures].[ParameterCaption] 
AS [Time Dim].[Year].CURRENTMEMBER.MEMBER_CAPTION MEMBER [Measures].[ParameterValue] 
AS [Time Dim].[Year].CURRENTMEMBER.UNIQUENAME MEMBER [Measures].[ParameterLevel] 
AS [Time Dim].[Year].CURRENTMEMBER.LEVEL.ORDINAL 
SELECT {[Measures].[ParameterCaption], [Measures].[ParameterValue], [Measures].[ParameterLevel]} 
ON COLUMNS , [Time Dim].[Year].ALLMEMBERS ON ROWS FROM [Data Warehouse]

所以说“数据仓库”是在开发人员的机器上存储 SSAS 多维数据集的数据的数据库的名称。但在生产中它被称为“Prod DW”。即使我将数据源更改为指向新的多维数据集,查询仍会查看旧的多维数据集。我发现更改它的唯一方法是手动编辑 rdl 文件或在 Visual Studio 中编辑它们。

【问题讨论】:

    标签: reporting-services datasource ssas mdx rdl


    【解决方案1】:

    所以我并不完全确定这个答案,其他人可以确认这是否属实。

    这些查询中的名称(例如 [Data Warehouse][Some Cube])似乎是我们 SSAS 数据库中的数据源、数据源视图和多维数据集的名称。

    我担心的原因是因为我们的应用程序需要是多租户的,多个租户具有几乎相同的多维数据集,都托管在同一个 SSAS 服务器中。我当时认为 Cube 的名称对于每个 SSAS 数据库都必须是唯一的,但事实并非如此,只有数据库名称需要是唯一的。

    因此,如果在用于部署 AS 数据库的 xmla 文件中,数据库名称和 ID 发生了变化,但多维数据集、数据源和数据源视图的名称和 ID 保持不变,则报表可以在各种不同的多维数据集上工作,具体取决于他们共享的数据源。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-07
      相关资源
      最近更新 更多