1

我正在尝试创建一个有两个输入的步骤。它们都应该采用相同的格式。我需要使用这两个输入流进行处理并输出一个流。

以下是我目前在 processRow() 中的代码:

List<StreamInterface> infoStreams = meta.getStepIOMeta().getInfoStreams();

data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname());
data.twoRowSet = findInputRowSet(infoStreams.get(1).getStepname());

如果它的第一行和所有行的以下内容:

data.one = getRowFrom(data.oneRowSet);
data.two = getRowFrom(data.twoRowSet);

if (data.one == null && data.two == null) {
      setOutputDone();
      return false;
}

但是在线上data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname());,我收到以下错误:The source step to read from [null] couldn't be found

您对此的投入将非常有帮助。谢谢。

编辑:我在这里添加了一个示例转换和我的步骤的源代码:https ://github.com/adeydas/KettleMultipleStreams/tree/develop

4

1 回答 1

0

我似乎找到了解决办法。我在这里写了一个小的“操作方法”:http: //abhis.ws/display/KKB/Kettle+transformation+step+with+multiple+input+streams,代码在 GitHub 上:https://github .com/adeydas/KettleMultipleStreams

于 2015-02-18T22:32:29.837 回答