1、There was a data type error: the data type of java.lang.String object [1 SU251] does not correspond to value meta [String(15)<binary-string>]
使用csv输入+java脚本时可能发生以上错误,改为excel输入即可
2、使用java脚本增加新列需要在下方字段标签页中声明,使用数据源的数据应使用get(Fields.In,"num").getString(r)来调用,使用参数应使用get(Fields.In, getParameter("Name")).getInteger(r)来调用
3、追加流中两个流字段名必须完全一致
4、java调用kettle时,除了公用的kettle-*.jar之外,根据包含的步骤不同需要加载不同的jar包,这些包都存在于kettle目录下的lib中
5、cmd执行ktr和kjb
cd D:/kettle/pdi-ce-7.0.0.0-25/data-integration/
Kitchen.bat -norep -file=D:\kettle\pdi-ce-7.0.0.0-25\kettle_project\original_ad\original_ad_qe.kjb "-param:StartDate=20180828" "-param:DataPath=deaktop"
#linux下可以没有双引号
cd D:/kettle/pdi-ce-7.0.0.0-25/data-integration/
pan /norep -file=D:/kettle/pdi-ce-7.0.0.0-25/project/2.ktr >> D:/baidu/Desktop/kettle.log
在编辑-设置-命名参数中加入命名参数,之后即可使用命令行中传入的参数
6、kettle共享数据源,在数据源上右键共享,在C:\Users\用户名\.kettle\shared.xml中就会出现被共享的数据源的配置,重启kettle后在其他作业和转换中即可使用
7、文本文件输入组件 error:Couldn't open file ,内容-格式 ,改为unix
8、表输出 提速,在数据源库连接中配置命名参数如下:
useServerPrepStmts=false
rewriteBatchedStatements=true
useCompression=true
9、邮件错误,Unrecognized SSL message ,邮件发件人、账户密码、端口、ssl等选项错误
10、转换transcation中的步骤都是针对行进行处理,例如发邮件、执行sql等都是来一行数据执行一次,往往与预期效果不同,常见的是在作业job中进行相关处理
11、邮件带附件,需要使用 从结果中清除文件 和 向结果中添加文件 ,才能使结果中只包含指定文件,再在邮件中设置附件为 一般 即可。
12、kettle导入jar包,将jar包放入kettle的lib文件夹下,重启kettle即可
13、Cannot determine simple type name "Date" 需要在java模块中import 该类
14、linux下不支持JNDI连接模式,需另行配置JDBC连接并共享