【问题标题】:Talend - load context to subjobsTalend - 将上下文加载到子作业
【发布时间】:2014-10-08 15:34:30
【问题描述】:

我正在尝试在 Talend 中创建一个主要作业,该作业将扫描目录中的多个文件(f1.csv、f2.xls...),然后运行为特定文件创建的单独作业。我想创建一个上下文变量来捕获文件名并调用适当的作业。如何设置上下文变量来存储找到的文件的文件名并将其传递给其他作业?

【问题讨论】:

  • 您必须在两个作业中定义上下文变量,然后当您使用 tRunJob 拖放作业时,您可以将上下文变量值显式传递给子/子作业
  • 我在 tRunJob 上添加了一个上下文参数并传递了这个值:((String)globalMap.get("tWaitForFile_1_FILENAME"))

标签: etl talend


【解决方案1】:

创建一个名为 child_job 的作业。在里面,转到上下文选项卡,并创建一个名为 file 的新上下文变量,其类型为 String。在里面,你可以放置引用这个 context.file 变量的组件。 现在,创建另一个名为 main_job 的作业。在里面放一个 tFileList。使用要在其中查找文件的所需路径配置此组件中的设置。然后,从左侧面板(作业设计)拖动 child_job 或放置一个 tRunJob 并将其设置为调用 child_job 作业。最后,通过 child_job 的迭代链接加入 tFileList,选择 child_job,转到 Component 选项卡,添加一个参数(您之前创建的文件参数)并将值设置为 ((String)globalMap.get("tFileList_1_CURRENT_FILE" )) 你就完成了!

类似的东西:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-11
    • 1970-01-01
    • 2019-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多