循环子作业中的文件名(水壶作业)

时间:2015-05-17 13:07:14

标签: pentaho kettle spoon

任务是从文件夹中获取文件名,然后逐个循环所有文件上的相同任务(作业)。

我创建了一个简单的转换工作(获取文件名),然后使用标志"每行执行#34; (现在只记录文件的名称)。

与此处描述的方式相同:http://ramathoughts.blogspot.ch/2010/08/processing-group-of-files-with-kettle.html

但是,接收文件的路径不会传递给子作业(日志记录不显示变量值)。但是子作业的执行次数与输入文件夹中的文件数一样多。因此看起来它在某种程度上被传递,但由于某种原因不能作为变量使用。

带有日志详细信息的图像,如下所示变量显示为${path}而不是路径值: http://i.imgur.com/pK1iHtl.png?1

示例代码如下所示,包含作业和转换以及示例输入文件。任何帮助都表示赞赏,因为我可能在这里遗漏了一些简单的https://www.hightail.com/download/bXBhL0dNcklCMTVsQXNUQw

1 个答案:

答案 0 :(得分:3)

问题是第二个作业(即j_log_file_names.kjb)无法检测到参数path。只需尝试为此Job定义参数;如下图所示:

enter image description here

这将确保来自prev的参数。步骤被正确地提取到作业中。你的其余工作看起来绝对正常。

希望这会有所帮助:)