作者:陈剑冬 历史版本:1 最后编辑:陈剑冬 更新时间:2024-05-27 17:04
功能简介
该步骤允许在作业或转换中设置变量。它接受一行(且仅一行)数据来设置变量的值。
注意:不能在相同的转换中设置和使用同一个变量,这是因为所有步骤都是并行运行的。但可以设置要在作业的第一次转换中使用的变量,另外注意设置变量只接受一条数据。
基本配置
- 步骤名称:指定设置变量的步骤名称,该名称在同一转换中唯一。
- apply formatting:设置此选项后,它会根据格式选项设置值(日期、数字等)的格式。否则,不会进行格式化。
- 字段名称:所用字段的名称。
- 变量名:要设置的变量的名称(不带 ${…} 或 %%…%% 符号)。
- 变量活动范围:定义变量的作用域,可能的选项有
- Valid in the Java Virtual Machine:整个虚拟机将知道此变量。
- Valid in the parent job:变量仅在父作业中有效
- valid in the grand-parent job:该变量在祖父作业以及所有子作业和转换中有效。
- Valid in the root job:变量在根作业以及所有子作业和转换中有效。
- default value:字段默认值。
使用示例
通常情况下,用户可以通过“获取系统信息”组件获得系统环境变量,也可以通过“设置变量”组件,定义虚拟机和任务中的变量。在项目中,会经常利用生产环境或外围系统交互的FTP文件接口,获取固定格式的数据文件。
需求描述:某生产系统每天会定时推送数据文件,为了获得日期变量并每天读取由生产系统推送的数据文件,需要使用设置变量组件,将每天的0点时间设置为systemTime变量,将变量获取的日期时间插入到数据表中。
设计转换
获取系统信息,将当天00:00:00的数据存储在systemTime变量中
设置systemTime变量,注意变量名无需加引用$符号
设置输出后,点击运行,查看输出结果