首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SpagoBI多值参数

SpagoBI多值参数
EN

Stack Overflow用户
提问于 2016-07-26 11:02:17
回答 2查看 643关注 0票数 1

我试图在SpagoBI中创建一个多值参数。

下面是我的数据集查询,其最后一行似乎引起了问题。

代码语言:javascript
复制
select C."CUSTOMERNAME", C."CITY", D."YEAR", P."NAME"
from "CUSTOMER" C, "DAY" D, "PRODUCT" P, "TRANSACTIONS" T
where C."CUSTOMERID" = T."CUSTOMERID"
and D."DAYID" = T."DAYID"
and P."PRODUCTID" = T."PRODUCTID"
and _CITY_

在dataset中打开脚本之前,我创建了如下所示:

代码语言:javascript
复制
this.queryText = this.queryText.replace(_CITY_, " CUSTOMER.CITY in ( "+params["cp"].value+" ) "); 

我的参数设置为字符串,显示类型动态列表框。

当我运行报告时,我会得到那个错误。

代码语言:javascript
复制
org.eclipse.birt.report.engine.api.EngineException: There are errors evaluating script "
this.queryText = this.queryText.replace(_CITY_, " CUSTOMER.CITY in ( "+params["cp"].value+" ) "); 
":
Fail to execute script in function __bm_beforeOpen(). Source:

有人能帮帮我吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-29 10:01:31

你好,我设法解决了这个问题。这是我的代码:

代码语言:javascript
复制
var substring = "" ;
var strParamValsSelected=reportContext.getParameterValue("citytext");
substring += "?," + strParamValsSelected ;
this.queryText = this.queryText.replace("'xxx'",substring);

正如你所看到的"?“在我的参数之前是必要的。也许它会对某人有帮助。非常感谢你的评论。

票数 2
EN

Stack Overflow用户

发布于 2016-11-03 06:06:23

如果您正在使用SpagoBI serverHigh图表 (JFreeChart Engine) / JSChat引擎,则只需在查询中使用($P{param_url}),也可以使用JSChat/ groovy脚本构建动态查询。

因此,您的查询还可以是:

代码语言:javascript
复制
select C."CUSTOMERNAME", C."CITY", D."YEAR", P."NAME"
from "CUSTOMER" C, "DAY" D, "PRODUCT" P, "TRANSACTIONS" T
where C."CUSTOMERID" = T."CUSTOMERID"
and D."DAYID" = T."DAYID"
and P."PRODUCTID" = T."PRODUCTID"
and CUSTOMER."CITY" in ('$P{param_url}')
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38588099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档