刚接触kettle不久,想要在作业中创建一个变量,然后在作业的所有转换中使用,研究了半天,终于搞定,分享给大家
一、【作业】的设置
创建一个作业,并添加下面5个组件(开始组件、设置变量组件、JavaScript组件、转换组件、写日志组件)

设置变量:
注意设置变量有效范围:当前作业有效

JavaScript:
通过读取当前时间,并给变量赋值

代码如下:
var dateFormat = new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
var nowdatetime = new java.util.Date();
// 获取当前时间
nowdatetime.setDate(nowdatetime.getDate());
var nowtime = dateFormat.format(nowdatetime);
parent_job.setVariable("now_time",nowtime);
true;
转换
注意勾选:将所有参数值都传递给子转换

写日志:

二、【转换】的设置
很简单,设置下面两个即可

获取变量:

写日志:

执行结果
由日志可知:作业中及转换中都已经可以获取到当前时间变量的值
