Talend 如何强制tRunJob的子作业使用与父作业相同的上下文?

Talend 如何强制tRunJob的子作业使用与父作业相同的上下文?,talend,Talend,我在Talend ESB(SE)6.5.1中有一个路由,它使用cTalendJob调用Talend作业,并且它有一个单选按钮选项“使用路由上下文”,这很好-如果我的路由是DEV Context,那么它就是我的作业 然而,当我尝试将此作业移动到另一个上下文(在运行时)时,我遇到了子作业的问题。我的作业使用tRunJob调用子作业,在该子作业中,上下文是一个强制参数,并且没有“当前”或类似选项。因此,当我使用上下文测试调用我的路由时,名为buy ctalendanJob的作业将拾取路由上下文(TES

我在Talend ESB(SE)6.5.1中有一个路由,它使用
cTalendJob
调用Talend作业,并且它有一个单选按钮选项“使用路由上下文”,这很好-如果我的路由是DEV Context,那么它就是我的作业

然而,当我尝试将此作业移动到另一个上下文(在运行时)时,我遇到了子作业的问题。我的作业使用
tRunJob
调用子作业,在该子作业中,上下文是一个强制参数,并且没有“当前”或类似选项。因此,当我使用上下文测试调用我的路由时,名为buy ctalendanJob的作业将拾取路由上下文(TEST),但子作业仍将拾取开发上下文

我能看到的在子作业中强制使用正确上下文的唯一方法是

  • 选中
    传输整个上下文
    选项,但只有当我的子作业中的所有上下文选项也存在于父作业中时,该选项才会起作用,因为父作业很烦人,而且可能有风险

  • 使用动态作业(即使不是),并将当前上下文本身指定为上下文参数。同样,这是丑陋的,可能效率较低,也有潜在的问题

肯定有更好的解决办法吗?这似乎是整个语境的关键所在


谢谢你的关注

不幸的是,不,正确的方法是在父作业和子作业中加载上下文,并选中“传输整个上下文”。 如果您在“上下文”中定义您的上下文,并在两者中使用相同的上下文,则没有风险