Kettle PDI如何在Table输入前定义参数

Kettle PDI how to define parameters before Table input

我正在将数据从一个数据库转换到结构略有不同的另一个数据库。 在我的流程中,有时我需要从第一个数据库中读取数据,过滤来自前面步骤的 id。

这是我的流量图

最后一步是我需要过滤数据的地方。查询是:

SELECT e.*,UNIX_TIMESTAMP(v.dataInserimento)*1000 as timestamp
FROM verbale_evento ve JOIN evento e ON ve.eventi_id=e.id
WHERE ve.Verbale_id=? AND e.titolo='Note verbale'

可惜ve.Verbale_id是第一列table(第一步)。如何定义按该字段过滤?

现在我有一个错误:

2017/12/22 15:01:00 - Error setting value #2 [Boolean] on prepared statement
2017/12/22 15:01:00 - Parameter index out of range (2 > number of parameters, which is 1).

我需要在整个转换结束时执行此查询。

您可以将前几行数据作为参数传递。

但是,Table 输入查询中参数占位符的数量必须与传入数据流的字段数量匹配。另外,顺序很重要。

尝试使用 select 值步骤将数据流修剪为仅要传递的字段,然后在 table 底部附近的“从以下位置获取数据”框中选择该步骤输入。另外,检查“为每个输入行执行”。