1. Kettle循环获取结果集并传入转换里面
是Kettle循环转换(t1.ktr)中的结果集,放到转换2(var.ktr)中,输出到本地txt文件中
1.1 job
j1.kjb

- JavaScript
var prevRow=previous_result.getRows();//获取上一个传递的结果
if (prevRow == null &&(prevRow.size()=0))
{
false;
}else{
parent_job.setVariable("tables", prevRow);//ArrayList存储表名变量,以数组形式保存入table1,table2
parent_job.setVariable("size", prevRow.size());//存储执行表的总数量
parent_job.setVariable("i", 0);//循环控制变量
parent_job.setVariable("id", prevRow.get(0).getString("id", ""));
parent_job.setVariable("name", prevRow.get(0).getString("name", ""));
true;
}
- 检验字段的值

- JavaScript2
var prevRow=previous_result.getRows();
var size = new Number(parent_job.getVariable("size"));
var i = new Number(parent_job.getVariable("i"))+1;
if(i<size){
parent_job.setVariable("id", prevRow.get(i).getString("id", ""));
parent_job.setVariable("name", prevRow.get(i).getString("name", ""));
}
parent_job.setVariable("i",i);
true;
1.2 转换
t1.ktr
配置参考:Kettle循环获取结果集

1.3 转换2
var.ktr

- 获取变量

- 文本文件输出



1.4 最终输出结果

本文介绍如何使用Kettle通过循环获取转换中的结果集,并将这些数据输出到本地txt文件中。具体步骤包括:设置job获取结果集,利用JavaScript进行字段值的检验,配置转换流程,最终实现数据的循环输出。

827

被折叠的 条评论
为什么被折叠?



