ASO计算脚本的MDX查询出错

时间:2014-02-06 08:57:24

标签: mdx

我有一个ASO多维数据集的计算脚本,可以将数据从一个版本复制到另一个版本。在我的POV部分代码我使用MDX的交叉连接函数来创建一组元组

POV "Crossjoin({Filter([Accounts].Members, IsLeaf([Accounts].CurrentMember))},

Crossjoin ({[D100]},

Crossjoin ({[2014]},{[USD]})))"

SourceRegion "Crossjoin({[ACTL]}, {[EOP]})" ;

但在执行此MDX时使用Maxl我收到以下错误

MaxL Shell completed with error

ERROR - 1300033 - Upper-level members, for example [AC0001], are not allowed in argument [POV]. Select a level-0 member.

ERROR - 1241190 - Custom Calculation terminated with Essbase error 1300033 in POV.

我正在使用过滤器功能从POV部分的帐户维度中过滤掉所有lev 0成员,不知何故仍然是其返回的父级成员。我也试过[Accounts].Levels(0).Members

但面临同样的问题。

任何人都可以帮我解决我的错误吗?

1 个答案:

答案 0 :(得分:0)

计算脚本通常用于计算从一个Application.Database中的输入帐户派生的帐户。计算脚本使用通常在BSO中的合并运算符(+)或公式。

假设您尝试将一部分数据从一个ASO Application.Database提取到另一个Application.Database,一个选项是使用语法类似于以下内容的报告脚本来仅提取Level 0成员。您可以右键单击Essbase Administration Services中的报告脚本并执行它。编写脚本通常比多维表达式更容易编写。上面说明当你总是需要在0级加载ASO时,你试图过滤掉0级成员。他们将在大纲中向上滚动到更高级别。

要加载文本文件提取,构建规则文件并在EAS中验证它(您也可以使用EAS直接从关系数据库表加载)。选择"文件" - "打开数据文件"。验证文件后,您可以使用EAS将文件加载到另一个Application.Database中。在EAS中完成该过程后,您可以使用MAXL代码自动执行该过程,并从命令提示符运行该过程。

如果您要复制或镜像整个Application.Database,请右键单击该应用程序,然后在Essbase管理服务中选择复制。