历史版本2 :条件分支 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本说明

FineReport 版本插件版本功能变动
10.0V2.0ETL 作业新增一种节点类型:「条件分支」

1.2 应用场景

条件分支节点的作用就是基于一个来自于上游或者系统的条件,判断是否继续运行下游的节点。

例如:设置一个条件分支,该分支包含两个判断条件,在两个时间段内分别执行不同的离线同步操作,如下图所示:

1.3 功能入口

在 ETL 任务的节点列表处,新增一种节点类型:「条件分支」,但是拖到任务设计界面并不能直接添加条件,添加条件需要满足:

  • 条件分支节点跟其他节点连接起来。

  • 任务需要有参数,因为「条件分支」节点添加条件时就是根据参数进行判断,所以没参数就没办法设置条件。

1.4 功能简介

  • 支持添加多个条件分支,指向不同的下游节点,并可对条件进行编辑。

  • 条件判断返回的值为布尔型:true 或 false,当返回值为 true 时,执行下游节点,当返回值为 false 时,不执行下游节点。

  • 不满足分支条件时,未执行的下游节点不等同于运行失败,不影响整体任务的运行。

2. 示例编辑

2.1 设置参数

新建一个 ETL 任务,给这个任务设置一个日期类型的参数 a ,其值为 yyyy/mm/dd-1 ,表示取当前日期前一天,如下图所示:

2.2 新建节点

将一个条件分支节点和两个离线同步节点分别拖到设计界面,离线同步节点分别重命名为:离线同步1、离线同步2。如下图所示:

2.3 设置离线同步

1)双击离线同步1节点,将用户表test里面的数据抽取到自动建表001中去,如下图所示:

2)双击离线同步2节点,将用户表test里面的数据抽取到自动建表002中去,如下图所示:

2.4 设置条件分支

1)设置执行离线同步1的条件

双击「条件分支」节点,在编辑页面,点击「离线同步1」分支的操作按钮,如下图所示:

添加一个条件:参数 a 属于日期区间 2021-10-29 00:00:00~2021-10-31 00:00:00 ,也就是当前日期前一天如果在这个区间内,就执行离线同步1,如下图所示:

2)设置执行离线同步2的条件

设置好第一个条件后,在编辑页面,点击「离线同步2」分支的操作按钮,如下图所示:

添加一个条件:参数 a 属于日期区间 2021-10-26 00:00:00~2021-10-29 00:00:00 ,也就是当前日期前一天如果在这个区间内,就执行离线同步2,如下图所示:

2.5 最终效果

最终完成的任务界面如 1.2 应用场景中所示。

如果当前日期的前一天在区间 2021-10-29 00:00:00~2021-10-31 00:00:00 内,那么该 ETL 任务执行离线同步1,不执行离线同步2。

如果当前日期的前一天在区间 2021-10-26 00:00:00~2021-10-29 00:00:00 内,那么该 ETL 任务执行离线同步2,不执行离线同步1。

3. 注意事项编辑

3.1 常量条件值

直接输入常量类型的条件值,和定义参数时输入的常量格式保持一致,具体要求如下表所示:

类型
示例备注
数字-单个1
数字-数组1.4,2.6,4.8,5.6
数字间用英文逗号隔开
文本-单个文本1
文本-多个'文本1','文本2'文本加单引号,用英文逗号隔开

用文本常量值举个例子,设置如下图所示: