DI的Talend - 如何将未知数量的输入文件合并到一个表中?

时间:2017-02-02 23:37:17

标签: jobs talend tmap

我有一个主输入表,包含'标题'数据,如id,name,date,.... 我还有一个subjob CALC dat按月计算值,具体取决于MAIN的日期 - > subjob将包含以下列的新表:[month_1],....,[month_12],[TOTAL_YEAR]存储到新的.dat文件(由tCacheOutput存储)中,其中包含Parent Job和currentYear的名称。

例如:Parentjob = PARENT

PARENT将包含:[id],[name],[date],[value]的一些标题数据保存到缓存文件PARENT.dat中,然后调用subjob CHILD。

CHILD迭代数年(我通过tFixedFlowInput提供它们)并从PARENT.dat文件中获取数据。然后它检查年份(f.ex.2016)和月份,并生成一个新表(使用tMap)与[month_1],[month_2],...,[month_12],[total]并将其存储到新的.dat文件名为PARENT_2016。 我们希望每年都重复这个过程......

返回父作业后,我现在必须对PARENT.dat,PARENT_2016,...文件中包含的数据进行分组。

我的问题是如何才能找到生成的所有文件,只需将它们“粘合在一起”放入一个大表中? 我知道我可以手动创建每年的输入(tCacheInput),然后使用tMap将它们组合在一起,但我不知道手头的架构(​​因为我不知道该工作需要检查多少年)而我不希望每年手动输入......

1 个答案:

答案 0 :(得分:0)

您需要使用tFileList。 并放入过滤器:" PARENT *"

这会将所有带有PARENT模式的文件放在文件夹