Talend开放数据集成:从excel文件中读取表达式,然后在tMap中执行它们

时间:2016-04-27 06:30:41

标签: expression etl talend flat-file

我对Talend很新,想从给定文件中读取一个表达式,然后在tMap函数中执行它。

表达式存储在一个单独的excel列中,如下所示:

row7.value1 + row7.value2 == 0 ? 0 : row7.value1/(row7.value1 + row7.value2)

我完成了通过全局地图将其作为字符串读取:

((String) globalMap.get("row6.column_that_contains_expr"))

但是我无法在tMap中执行表达式以获得结果值。

我的工作看起来像这样:

tFileInputExcel = row6 => tFlowToIerate => tPostgresqlInput = row7 => tMap => tFileOutpuDelimited

您能否告诉我如何从文件中执行表达式并获取生成的double?

问候

西蒙

1 个答案:

答案 0 :(得分:0)

我通常要做的是在tFlowToIerate之前有一个tJavaRow组件,我将这些值分配给上下文变量并直接在上下文中使用它们在tPostgresqlInput中