Pentaho数据集成(PD)I:选择记录后我需要使用pentaho transforamtion更新表中的字段值

时间:2014-05-28 18:32:08

标签: pentaho

需要创建一个我必须运行select语句的转换。选择值后,它应该更新状态,因此它不会再次处理相同的记录。

选择file_id,位置,名称,状态

来自文件

输出:

1,c / user /,abc,PROCESS

更新的输出应为:

1,c / user /,abc,INPROCESS

我是否可以进行数据库选择并缓存记录,以便它不会在PDI中的单个转换中再次处理相同的记录?所以我不需要更新数据库中的状态。与Informatica中的动态查找类似的东西。如果不是,那么在进行选择后更新数据库的最佳方法是什么。

enter image description here

1 个答案:

答案 0 :(得分:1)

谢谢,这有帮助。由于PDI转换的多线程执行模型,您不会在单个转换中执行此操作;在转换结束之前,你不能指望一个变量被设置。

这样做的方法是在Job中放两个转换,并在作业中创建一个变量。第一个转换运行您的选择并将结果流入Set Variables步骤。配置它以设置您在作业中创建的变量。接下来,运行包含Excel Input步骤的第二个转换。将作业级别变量指定为文件名。

如果select提供了多个结果,则可以将文件名存储在Jobs文件结果区域中。您可以使用Set files in result步骤执行此操作。然后,您可以将作业配置为针对每个结果文件运行一次第二次转换。