title: Process multiple inputs to a Kettle step
body: <p>I am trying to create a step where I have two inputs. Both of them should be in the same format. I need to process using these two input streams and output one stream.</p>
  
  <p>Below is the code I have so far in processRow():</p>
  
  <pre><code>List&lt;StreamInterface&gt; infoStreams = meta.getStepIOMeta().getInfoStreams();
  
  data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname());
  data.twoRowSet = findInputRowSet(infoStreams.get(1).getStepname());
  </code></pre>
  
  <p>if its the first row and the following for all rows:</p>
  
  <pre><code>data.one = getRowFrom(data.oneRowSet);
  data.two = getRowFrom(data.twoRowSet);
  
  if (data.one == null &amp;&amp; data.two == null) {
        setOutputDone();
        return false;
  }
  </code></pre>
  
  <p>However on the line <code>data.oneRowSet = findInputRowSet(infoStreams.get(0).getStepname());</code>, I get the following error: <code>The source step to read from [null] couldn't be found</code>.</p>
  
  <p>Your inputs on this would be really helpful. Thanks.</p>
  
  <p>EDIT: I have added an example transformation and the source code of my step here: <a href="https://github.com/adeydas/KettleMultipleStreams/tree/develop" rel="nofollow">https://github.com/adeydas/KettleMultipleStreams/tree/develop</a></p>