静态XML输入流——get data from xml
1、输入流各选项含义,引用自 https://wiki.pentaho.com/display/EAI/Get+Data+From+XML,token在最后面
Filed Tab
这一部分和excel输入流差不多,不再详细解释
1、从前面输入得到xml文件位置
2、选择xml文件位置或者多个xml文件
Content Tab
1) Loop Xpath:指的是xml文件中的层次结构,如下xml文件
2)Encoding:指的是xml文件的字符编码类型
3)Namespace aware : check this to make the XML document (选中此项即可识别XML文档名称空间)
4)Ignore comments : Ignore all comments in the XML document while parsing(解析时忽略XML文档中的所有注释)
5)Validate XML : Validate the XML prior to parsing——暂未搞明白,啥意思
6)Do not raise an error if no file:如果没有找到文件,请不要报错。
7)Limit : 限制输出行数
8)Prune path to handle large files: 和Loop Xpath基本一样,与处理大数据相关
下面解释一下Additional fields两个参数情况
Include filename in output,显示的是参数的内容,结果如下:
Rownum in output,显示行数,为递增列,列明为参数的名字,如下
下面解释一下Add files to result filename参数情况
在一个转换中引用后,会把文件的名字保存到内存中,然后下一个job或者转换去引用,
1) 见一个job,第一个转换引用kettle4,第二个转换引用kettle_test,如下
2) 见两个job,kettle4和kettle_test,其中kettle4 中xml输入流勾选此参数,
3) 我们在转换kettle_test中进行观察值,获取到的是kettle4转换的文件路径
Additional output fields 如下图,
use token 详解
作用:和数据库中表连接相似,如下,username1的用户名密码等属性没有和data数据在一个loop path下,那么通过token我们就可以像表一样给链接起来,得到username1的数值data1
1)Content 选项卡界面
2)Fields选项卡界面如下,1-5是通过get Fields得到的字段,下面详细说一下data字段获取
3)data 字段的参数是,../../InfoSession/InfoSessionData[@User=@_User-]/Data
../代表的返回上一层,这里就是指的从/Session_header/Session/SessionData返回/Session_header/Session
../../就是指的是从/Session_header/Session/SessionData返回/Session_header层
这里引用的是相对路径,
这里我们也可以引用绝对路径,../../可以写成/Session_header/
InfoSessionData[@User=@_User-] 这一段指的是InfoSessionData目录下满足条件的用户,也就是token的作用所在
@User所引用的是下面的User,如果有兴趣可以尝试一下,把xml下面对应的User改成其他字段,然后把此处对应的User也修改,结果依然是一样的
@_User-那么自然就指的是字段里的User了,看下图