首页 > 编程语言 >kettle从入门到精通 第十一课 kettle javascript 解析json数组

kettle从入门到精通 第十一课 kettle javascript 解析json数组

时间:2023-04-10 23:33:08浏览次数:37  
标签:脚本 javascript Java name 步骤 kettle json TRANSFORMATION

1、json步骤虽然可以解析json数组,但是不够灵活。通过javascript步骤来解析json数组比较灵活,且可以按照需要组装数据流转到下个步骤。

1)步骤名称:可以自定义

2)Transform Scripts:当前步骤编写的javascript脚本

3)Transform Constants:重新定义的静态常量,用于控制数据行发生的情况。您必须为trans_Status变量指定一个常数值。要使用这些常量,必须首先在脚本开始时将trans_Status变量设置为CONTINUE_TRANSFORMATION,以便对正在处理的第一行进行变量赋值。否则,将忽略trans_Status变量的任何后续赋值。双击一个常量,将其添加到Java脚本窗格中。

   CONTINUE_TRANSFORMATION: 将当前行包括在输出行集中。

   SKIP_TRANSFORMATION:从输出行集中排除当前行,并继续处理下一行。

   ERROR_TRANSFORMATION:从输出行集中排除当前行,生成错误,并且不处理任何剩余行。

   ABORT_TRANSFORMATION:从输出行集中排除当前行,并且不会处理任何剩余行,但不会生成错误。(此常量不会显示在PDI客户端PDI客户端中,但可以在脚本中使用)

4)Transform Functions:可以在脚本中使用的字符串、数字、日期、逻辑、特殊和文件函数。这些包含的函数是用Java实现的,执行速度比JavaScript函数快。每个函数都有一个演示其用途的示例脚本。双击该函数将其添加到Java脚本窗格中。右键单击并选择“示例”将示例添加到Java脚本窗格

5)Input Fields:当前步骤输入字段

6)Output Fields:当前步骤输出字段.

7)优化级别:1:JavaScript以解释模式运行。0:未执行任何优化。1-9:所有优化都已执行。9执行的优化最多,脚本执行速度更快,但编译速度较慢。默认值为9。

8)字段:设置输出元数据字段信息。

本事例用到的数据结构list为:[{"name":"a","age":"11"},{"name":"b","age":"22"}]],[{"name":"c","age":"33"},{"name":"d","age":"44"}]]

 

 官方文档:https://help.hitachivantara.com/Documentation/Pentaho/9.3/Products/Modified_Java_Script_Value

 

 

 

标签:脚本,javascript,Java,name,步骤,kettle,json,TRANSFORMATION
From: https://www.cnblogs.com/zjBoy/p/17301859.html

相关文章

  • JSON.parse意外失败的问题(传入内容在校验网站上检查无误)(传入内容来自CryptoJS.AES.dec
    背景:由CryptoJS.AES.decrypt解码来的数据并进行toString(CryptoJS.enc.Utf8)之后,无法使用JSON.parse转换成json数据,但是使用在线校验工具认为格式正确。可能是由于解码后的字符串包含了一些特殊字符或者不可见字符,导致JSON.parse方法无法正确解析字符串。可以尝试使用console.log......
  • json-server 笔记
    在vs-code的终端下运行出错:PSE:\newsvn\vue3学习\vite-blog>json-server--watchdb.jsonjson-server:无法加载文件C:\Users\Administrator\AppData\Roaming\npm\json-server.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅https:/go.microsoft.com/fwlink/?LinkID=......
  • JavaScript怎么实现web端上传超大文件
    ​ PHP用超级全局变量数组$_FILES来记录文件上传相关信息的。1.file_uploads=on/off 是否允许通过http方式上传文件2.max_execution_time=30 允许脚本最大执行时间,超过这个时间就会报错3.memory_limit=50M 设置脚本可以分配的最大内存量,防止失控脚本占用过多内存,此......
  • powershell-json文件解析
    .psobject.properties.name可以获取当前节点下的name(***)而.***获取该name冒号后的内容$path="C:\Users\2\Desktop\R360_TCM_Report_Annie\Local\AnnieCaseReport.json"#$path="C:\Users\2\Desktop\DDDDD\De1.json"$content=(Get-Content$path-Encod......
  • JavaScript
    JavaScript基础JavaScript的作用:表单动态校验(密码强度检测)(JS产生最初的目的)网页特效服务端开发(Node.js)桌面程序(Electron)App(Cordova)控制硬件-物联网(Ruff).游戏开发(cocos2d-js)JS的组成ECMAScriptECMAScript是由ECMA国际(原欧洲计算机制造商协会)......
  • gis经纬度坐标转换多格式兼容:支持字符串/数组/GeoJSON
    格式let coordinatesStrReg = /((-*[1][0-9]{0,2}|0)(\.[0-9]{1,6})*),\s{0,2}((-*[1-9][0-9]{0,1}|0)(\.[0-9]{1,6})*)/gstr.replace(coordinatesStrReg, (str, $1, $2, $3, $4, $5) => {  // lat=$1 lng lat=$4  console.log($1, $4)})代码,https://w......
  • 获取全国GeoJSON和各省市GeoJSON数据下载
    第一,从阿里云下载:http://datav.aliyun.com/tools/atlas/#&lat=33.50475906922609&lng=104.2822265625&zoom=4全国轮廓数据,26KB,省市轮廓256KB这个最简便,但是轮廓不是太清晰,直接从高德百度地图获取高德地图获取地图边界数据https://lbs.amap.com/api/javascript-api/reference-......
  • 百度高德地图行政区域边界GeoJSON数据获取并绘制行政区域
    highcharts是提供地图数据包的:https://www.highcharts.com/docs/maps/map-collectionechart矢量地图或者地图绘制矢量图层,GeoJSON哪里提供呢?dataV提供数据下载,http://datav.aliyun.com/tools/atlas/#&lat=30.332329214580188&lng=106.75386074913891&zoom=4.5这些数据也是从高......
  • axios写了前端,如何从后台获取到List列表数据(涉及到JSON)
    问题描述我将前端写完之后,一直没有理解axios后台的写法,导致进度一直拖慢,这里我就来叙述一下我后来是怎么写出后台代码的吧,或者说,这样的后台代码是怎么写出来的!问题解决经过友友的点拨,这里就需要将我们的list数据转换成json数据;然后将转换好的json数据传到axios写出来的html页......
  • javaScript技巧
    一、动态修改网页内容或属性1.改变HTML内容 2.改变属性值  3.改变css样式  4.操作元素  5.定时器 ......