在JASPER Studio中使用MDX处理参数

问题描述

我有一个已连接到SSAS表格立方体的jasper报告 我正在尝试构建一个简单的报告,作为按人口普查Id(作为参数)的总人数 首先,我建立一个查询

SELECT 
  NON EMPTY 
    {[Measures].[Total Persons]} ON COLUMNS
FROM 
(
  SELECT 
    StrToSet
    (@DIMROUNDRPKEY,CONSTRAINED
    ) ON COLUMNS
  FROM [Model]
)
WHERE 
  IIF
  (
    StrToSet(@DIMROUNDRPKEY,CONSTRAINED).Count = 1,StrToSet
    (@DIMROUNDRPKEY,CONSTRAINED
    ),[DIM_ROUND].[RP_KEY].CurrentMember
  )

但是当我在jasper中使用它时,它给了参数DIMROUNDRPKEY一个错误,但在我阅读时并未声明,我发现您必须使用${DIMROUNDRPKEY}而不是@DIMROUNDRPKEY。 这样就变成了

SELECT 
  NON EMPTY 
    {[Measures].[Total Persons]} ON COLUMNS
FROM 
(
  SELECT 
    StrToSet
    ($P{my_order_id}
    ) ON COLUMNS
  FROM [Model]
)
WHERE 
  IIF
  (
    StrToSet($P{my_order_id}).Count = 1,StrToSet
    ($P{my_order_id}
    ),[DIM_ROUND].[RP_KEY].CurrentMember
  )

这将错误更改为其他错误 STRTOset函数期望1参数的元组设置表达式。碧玉使用字符串或数字表达式

我阅读了很多主题,将参数更改为类似的内容

( STRTOMEMBER('[Dim_Round].[RP_KEY].[' + $P{my_order_id} + ']') )

出现一个错误 add运算符参数存在类型不匹配

那是我达到的目标...任何人都可以帮助我找到错误解决方案。 谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)