具有参数化 Table 输入的 Pentaho Kettle 映射

Pentaho Kettle Mapping with parameterized Table Input

我正在将一个值传递给子转换,子转换采用该值很好,因为我已经使用 java-脚本步骤来 Alert 它。

但是我在子转换步骤中有一个 table 输入步骤,我需要使用父转换值作为 TABLE 输入步骤的参数到 运行 a针对它进行查询,但它不起作用,因为 table 输入步骤不理解该字段,我该如何实现此行为?

我被困在这一点上,不能再进一步了。

剩下的唯一选择是使用 Pentaho JOBS,但是是否可以在转换中使用 Mapping

我尝试在子转换中使用 setVariable 函数 javascript 但没有任何效果。

我希望你的子转换类似于下图中的子转换。你确定你传递的参数正确吗?重要的是:

  • Mapping input specification 中的参数数量与 Table input 步骤中使用的参数数量相同
  • Replace variables in script 选中
  • Insert data from step
  • 参数 ? 在 SQL 查询中使用

如果您需要将更多参数传递给table input,则上一步中的参数数量(在我的示例中为Mapping input specification)需要尊重您在 table 输入中使用的参数数量 。然后您在查询中使用 ? 多次。例如。对于 3 个参数,您可以拥有:

WHERE name = ? AND surname = ? AND age = ?

您还需要遵守来自上一步的参数的顺序: