通过父作业运行Talend子作业

通过父作业运行Talend子作业,talend,Talend,我想开发一个Talend作业父作业,它将读取一个文件。此文件将包含所有子作业名称。 因此,运行时父作业必须遍历文件中的每个条目(即每个子作业名称)并执行子作业。 任何人都可以在这方面指导我。你可以像下面的场景那样做 这是我试过的工作样本 我假设您的输入来自CSV文件,输入文件包含三个工作名称,分别是 ChildJob1 ChildJob2 ChildJob3 我获取jobname并将其分配给一个上下文变量,如下所示 然后在tRunJob组件中使用该上下文变量 每个子作业都有一个显示作业名

我想开发一个Talend作业父作业,它将读取一个文件。此文件将包含所有子作业名称。 因此,运行时父作业必须遍历文件中的每个条目(即每个子作业名称)并执行子作业。
任何人都可以在这方面指导我。

你可以像下面的场景那样做

这是我试过的工作样本

我假设您的输入来自CSV文件,输入文件包含三个工作名称,分别是

ChildJob1
ChildJob2
ChildJob3
我获取jobname并将其分配给一个上下文变量,如下所示

然后在
tRunJob
组件中使用该上下文变量

每个子作业都有一个显示作业名称的
tjava
组件

希望这对您有所帮助。

您可以使用动态作业功能,我执行了3个子作业,称为a、b和c,文件中指定了顺序,请参见以下内容:

第一个块是将文件加载到上下文中,您可以使用属性文件或分隔文件

我将属性文件与以下内容一起使用:

jobs=a;c;b;a
必须添加一个名为
jobs
的字符串类型上下文变量,才能将属性值放入

现在,我们的作业列表存储在一个上下文变量中,我们需要使用一个名为
currentjob
的上下文变量对它们进行迭代和更新:

最后,这是如何设置tRunJob组件:


这里指定要执行的作业,但执行顺序由文件指定

输入文件的格式是什么?我们可以举一个输入文件的例子吗?输入文件可以是CSV文件。是否在任何地方都可以编辑架构?还有要填写的上下文参数吗?我收到错误“作业无法解析为变量”您需要2个上下文变量,
jobs
将所有作业名称包含在一个来自文件的字符串中,
currentjob
是每个迭代中要执行的作业。如何创建这些上下文变量?我是talend的新手,所以我不知道。请看这里:我必须为两个上下文变量jobs和currentjob提供哪些值?我得到以下错误值无法解决或不是字段,请帮助!在哪个字段上突出显示错误?如果在
context.JobName
上,请检查您是否在
context
选项卡中声明了
JobName
上下文变量。