gpt4 book ai didi

javascript - Pentaho/Kettle JavaScript : Calling a field dynamically

转载 作者:行者123 更新时间:2023-11-28 18:39:02 30 4
gpt4 key购买 nike

我正在尝试检索字段的值,但我需要动态构建字段的名称。

想象一下,我将去年按天出生的人放在名为“天数”的列中。因此,您有 DAY_1、DAY_2、DAY_3 等列。值为 5、12、33...我想对所有这些值进行循环,为此我构建了动态名称的字段名称:

var 列名 = "DAY_"+i

所以稍后我可以做我的循环,将 i 逐一增加。

问题是 javascript 无法将 DAY_i 识别为有效的输入字段,因此我无法检索该字段的值,Pentaho 将其作为字符串处理。

最佳答案

在 javascript 步骤中有一个数组变量 row。您可以使用 getInputRowMeta().indexOfValue("DAY_"+ i) 查找列的索引,然后使用该索引获取当前行中字段的值:

var column_name = "DAY_" + i;
var column_index = getInputRowMeta().indexOfValue(column_name);
var column_value = row[column_index];

请注意,column_value 将引用某种 Java 类型的对象(例如 java.lang.String),因此 javascript String 方法将无法处理该值。您需要将值转换为 javascript 类型或使用 java 方法。

关于javascript - Pentaho/Kettle JavaScript : Calling a field dynamically,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36453505/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com