Excel - 以单元格值作为参数对 SSAS 多维数据集进行 MDX 查询

标签 excel parameters ssas mdx

我正在尝试使用单元格值作为参数值来通过 Excel 执行 MDX 查询。请问这个查询有什么帮助吗?

WITH MEMBER
[Measures].[SubDrillDown] AS [Statement Financial Analysis].[Report      Framework].PARENT_UNIQUE_NAME
SELECT NON EMPTY {
[Measures].[SubDrillDown],
[Measures].[Budget Opening],
[Measures].[Budget Closing], 
[Measures].[Actuals Opening],
[Measures].[Actuals Closing],
[Measures].[Budget],
[Measures].[Actuals],
[Measures].[Commitments Closing],
[Measures].[Job Budget],
[Measures].[Job Budget Closing],
[Measures].[Job Annual Plan],
[Measures].[Job Annual Plan Closing],
[Measures].[Job Commitments]

} ON COLUMNS, 
NON EMPTY { 
(
[Statement Financial Analysis].[Report Framework].[Group Code].ALLMEMBERS *
[Financial Periods].[Financial Periods].[Financial Period].ALLMEMBERS 
*[Financial Periods].[Financial Period Name].[Financial Period Name].MEMBERS
*[Journal Transaction Structure].[Journal Code].MEMBERS
) 
} ON ROWS 
FROM ( SELECT ({'"&c1&"'})  ON COLUMNS 
FROM ( SELECT ({'"&c3&"'})  ON COLUMNS 
FROM ( SELECT ({'"&c4&"'})  ON COLUMNS 
FROM ( SELECT ({'"&c5&"'})  ON COLUMNS 
FROM [Fin] ))))

查询之前已经写过,我正在替换
FROM ( SELECT STRTOMEMBER(@prmYear)  ON COLUMNS 
FROM ( SELECT STRTOMEMBER(@prmDept)  ON COLUMNS 
FROM ( SELECT STRTOSET(@prmEntity)  ON COLUMNS 
FROM ( SELECT STRTOSET(@prmActivity)  ON COLUMNS 

显然,C1、C3、C4 和 C5 是 sheet1 上的单元格引用。这些单元格中的每一个都有一个完整的 MDX 值,例如:

c1 为 =CONCATENATE("[财务期间].[财务期间].[财务期间].&[",VLOOKUP(B1,Sheet2!A:B,2,FALSE),"-",C2,"-01 T00 :00:00]")

显示为 [Financial Periods].[Financial Periods].[Financial Period].&[2005-01-01 T00:00:00],希望 MDX 能够解释最终值

我收到错误“详细信息:”AnalysisServices: Query (30, 15) 该函数需要 1 参数的元组集表达式。使用了字符串或数字表达式。""并且被难住了。任何帮助,将不胜感激。

我已经使用 FULL TEXT 值运行了表达式并按计划工作,它只是对不起作用的单元格的引用。

谢谢你。

最佳答案

不是一个理想的答案,因为它只是一个链接,但我发现以下演练确实提供了有关 Excel 多维数据集函数功能的信息:

https://channel9.msdn.com/Events/TechEd/NewZealand/2013/DBI304

使用他概述的技术,您可以解构您的 mdx 并在单元格参数中为 mdx 设置值

关于Excel - 以单元格值作为参数对 SSAS 多维数据集进行 MDX 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43484233/

相关文章:

c - 将指针传递给指针以在函数中重新分配

excel - 在连接到 SSAS OLAP 多维数据集的 Excel 中按键排序

Excel 公式在 X 行后自动递增

excel - 即使 Application.AutoCorrect.AutoFillFormulasInLists = False,表也会自动填充公式

string - 传递给参数的值何时需要引号?

sql-server - 在 SSAS 中处理多维数据集期间没有跟踪信息

sql - SSAS 多维数据集 : Error while opening a data source view

java - "org.zuinnote.spark.office.excel"包中未写入空值

arrays - 在进行组合时删除辅助列

mysql存储过程跳过空参数