kettle中使用JavaScript的一个例子
最近在使用kettle的时候遇到一个问题,需要对输入的一个字段进行格式化,逻辑比较复杂(需要做替换掉指定的字符串,然后将数字部分不足四位的数前边补0等操作),kettle中没有提供直接的插件来支持复杂的业务逻辑处理,所以就自己写代码来处理。
kettle中可以支持Java代码和JavaScript代码,java代码我尝试了几次,不是太稳定,所以就使用了JavaScript
1.在左侧选择脚本中的 JavaScript代码
2.上个步骤传过来的字段 都在Input fields中,在JavaScript代码中可以直接引用这些变量。
3.用JavaScript来实现业务逻辑,经过业务处理之后得到的计算结果字段可以通过在JavaScript代码中定义新的变量 来增加新的字段
如下图:

kettle中使用JavaScript的一个例子的更多相关文章
- kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询
kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询 如果你须要实现非传统的数据库查询操作.为了讨论这样的情景,我们如果你须要读取数据库中的正則表達式,然后检查输入的 ...
- Java编程思想中关于闭包的一个例子
Java编程思想中的一个例子,不是很理解使用闭包的必要性,如果不使用闭包,是不是有些任务就不能完成?继续探索. package InnerClass; interface Incrementable ...
- SharePoint 自定义的列表页面中添加javascript的一个 For循环语句后,该页面就打不开了。
一个sharepoint 2013的普通的列表的自定义新建页面,我在其中新添加几行javascript代码后页面就打不开了.如图所示: 真是一言不合,友谊的页面说打不开就打不开啊.后来慢慢比对发现是因 ...
- 什么是javascript中的静态方法?一个例子让你懂~!
function Foo(){ this.age = 28};var a = new Foo();alert(a.age);//28alert(a.name);//undifined Foo.name ...
- java中生成流水号的一个例子(使用关系型数据库)
在实际的开发中,可能会有根据一定的规则生成流水号的需求(比如根据根据公司编码和日期生成4位流水号)我们可以把公司和日期联合起来作为一个业务编码,把这个业务编码和序列的值存储到数据库中,每次需要生成流水 ...
- java中生成流水号的一个例子(使用BerkeleyDB)
package com.jiaoyiping.berkeleydb; import com.sleepycat.je.*; import com.sleepycat.utilint.StringUti ...
- typescript 贪吃蛇[学习过程中,模仿的一个例子]
代码实现ts: 1 'use strict' module Main { const FloorType = { space: "space", snack: "body ...
- HTML & CSS & JavaScript 从一个表格到一个灰阶颜色表 04
工具1:HBuilder X 1.9.9.20190522 工具2:火狐浏览器 67.0.4 (64 位) 目前,我们已经将一些行和列插入到表格中,并设置单元格的背景颜色,显示 RGB 值等. 例 7 ...
- 从一个例子中体会React的基本面
[起初的准备工作] npm init npm install --save react react-dom npm install --save-dev html-webpack-plugin web ...
随机推荐
- GetDlgItem的用法小结
GetDlgItem用于获得指定控件ID的窗体指针,函数原型如下: HWND GetDlgItem( HWND hDlg, int nIDDlgItem ); CWnd* GetDlgItem(int ...
- 哪些因素影响ABBYY FineReader 12的识别质量
任何一款OCR文字识别软件都无法确保100%识别准确,更何况诸多因素的存在,都有可能直接或间接影响识别质量.在使用ABBYY FineReader 12识别或者转换文档的时候也存在同样的状况,今天来给 ...
- ABBYY FineReader利用模式提高OCR质量
提高OCR质量,除了可以使用ABBYY FineReader 12OCR文字识别软件解决纸质文档的复杂结构未出现在电子文档中,或者未正确检测到区域的问题(详见如何提高ABBYY FineReader ...
- BarTender出现条码打印位置不准的情况怎么办
在使用BarTender 2016设计打印条码标签,往往在打印时会遇到各种各样的问题,比如说:打印内容错位,内容发生偏移,与设置好的BarTender 2016条码标签的相对位置发生较为严重的偏差,这 ...
- Java正则表达式的使用和详解(上)
1.匹配验证-验证Email是否正确 public static void main(String[] args) { // 要验证的字符串 String str = "service@xs ...
- Python 多线程相关知识学习
多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进 ...
- Java加密和C#解密=>DES方法
Java加密代码: import javax.crypto.*; import javax.crypto.*; import java.io.UnsupportedEncodingException; ...
- thinkphp 在阿里云上的nginx.config配置
# For more information on configuration, see: # * Official English Documentation: http://nginx.org/e ...
- 如何把JavaScript数组中指定的一个元素移动到第一位
目的:通过LocalStrorage实现存储搜索历史--结合store.js实现 代码如下: function addSearchHistory(key,value) { var oldArr = s ...
- ssh面试题总结
SSH面试题总结: 题目1:Hibernate工作原理及为什么要用? 原理: hibernate,通过对jdbc进行封装,对 java类和 关系数据库进行mapping,实现了对关系数据库的面向对象方 ...