Eclipse 如何使用birt报告发送多个变量?

Eclipse 如何使用birt报告发送多个变量?,eclipse,db2,report,birt,maximo,Eclipse,Db2,Report,Birt,Maximo,在db2中使用以下查询: select * from table where num in ('1a2334','1a43432','1a34243','1b34325','1b4545') 现在,每当我得到要报告的数据时,我都会从用户那里得到如下行: 1a23344 1a43432 1a34243 1b34325 1b45454 然后我使用记事本++将rf替换为,“,这样它就变成了 '1a2334','1a43432','1a34243','1b34325','1b4545' 我可以选择

在db2中使用以下查询:

select * from table where num in ('1a2334','1a43432','1a34243','1b34325','1b4545')
现在,每当我得到要报告的数据时,我都会从用户那里得到如下行:

1a23344
1a43432
1a34243
1b34325
1b45454
然后我使用记事本++将rf替换为,“,这样它就变成了

'1a2334','1a43432','1a34243','1b34325','1b4545'
我可以选择哪些选项来创建一个对普通用户来说非常容易接受输入的报告

这个特定用户有一个包含多列的excel工作表,我只使用第一列(上面提到的示例是第一列中的行)

@Simulant提供了一个很好的解决方案,但我需要它从excel文件中获取值(最好是通过复制粘贴)。我注意到他/她的解决方案使用静态值,所以我认为我需要动态值。 对于记录,我使用脚本得到以下错误:

计算Javascript表达式时出错。脚本引擎错误: TypeError:无法调用null的方法“replace” (/report/data set/script data set[@id=“12”]/method[@name=“beforeOpen”]#3) 脚本源: /报表/数据集/脚本数据集[@id=“12”]/method[@name=“beforeOpen”], 行:0,文本: __bm_beforeOpen()。(元素ID:1)Error.ScriptEvaluationError(1次))详细信息:org.eclipse.birt.report.engine.api.EngineException: 评估脚本“var”参数时出错= 参数[“multiSelectParameter”]。值;var replacesPart=“””+ parameters.join(“,”)+“””this.queryText= this.queryText.replace(“replaceMe”,replacesPart);”:


使用多选参数创建报告。创建列表框参数并允许多个值。您可以添加静态值,也可以选择
动态
并显示另一个查询的结果

按照以下SQL语句编写查询:

select * from table where num in (replaceMe);
选择数据集并选择
脚本
选项卡。在打开之前输入以下脚本。这会将SQL语句中的占位符
replaceMe
替换为多选参数的相关值,这些值用单引号括起来
,并根据需要用逗号隔开

var parameters = params["multiSelectParameter"].value;
var replacesPart = "'" + parameters.join("', '") + "'";
this.queryText = this.queryText.replace("replaceMe", replacesPart);

这看起来是一个很好的解决方案,但它没有像我预期的那样工作,用户将有一个包含值的列表(我以前没有,也不应该更新所有内容)。我需要一些东西,以便用户可以选择一个excel行并复制粘贴到此报表中,而无需我的帮助。