kettle于javascript步骤错误处理
javascript步骤错误处理
假设你熟悉kettle误差特性转换。你可能想知道javascript步骤如何使用。骤用户界面机制是同样的,在javascript步骤右击,选择“定义错误处理”启用错误处理并配置。javascript代码能够识别错误行,并将他们转发到配置的错误处理步骤,通过使用_step_对象的putError()方法,须要下面几个參数:
1) RowMetaInterface对象描写叙述行结构
2) 当前的错误行
3) 在此行检測的错误数
4) 错误描写叙述字符串(错误消息)
5) 引起错误的字段名称(字符串)
6) 错误代码(字符串)
通常情况下,原始的,未经改动的输入行被传递到错误处理步骤。因此,前两个參数通常被指定为getInputRowMeta()和row。其它參数取决于你想怎么详细描写叙述所遇到的错误。javascript步骤定义错误处理配置能够配置那些字段输出到错误处理步骤。
这个转换的样例首先生成随机字符串。为了说明目的,javascript步骤推断前面生成的字符缺少字母'a'和'K'就报错,每一个缺少字母就产生一个错误。
javascript步骤包括下面代码:
varshould_error_on_a= (value.indexOf("a") == -1)?
1:0;
varshould_error_on_k= (value.indexOf("k") == -1)?1:0;
try{
if(should_error_on_a== 1 && should_error_on_k == 1){
throw{
message:"Value must contain 'a' and 'k'",
nr_errors:2,
field:"value",
errcode:"ERR:003"
}
}
elseif(should_error_on_a== 1){
throw{
message:"Value must contain 'a'",
nr_errors:1,
field:"value",
errcode:"ERR:001"
}
}
elseif(should_error_on_k== 1){
throw{
message:"Value must contain 'k'",
nr_errors:1,
field:"value",
errcode:"ERR:002"
}
}
//continue normally, passing the row on to the next step
trans_Status= CONTINUE_TRANSFORMATION;
}
catch(e){
//divert the current row to the error step and do not pass anything to thenext step
_step_.putError(getInputRowMeta(),row, e.nr_errors, e.message, e.field, e.errcode);
trans_Status= SKIP_TRANSFORMATION;
}
版权声明:本文博主原创文章,博客,未经同意不得转载。
kettle于javascript步骤错误处理的更多相关文章
- KETTLE使用javascript步骤过滤特殊字符
KETTLE使用javascript步骤过滤特殊字符 使用kettle在抽取大量excel数据时.总是遇到excel中有一些特殊字符,导致ExecuteSQL script步骤运行失败,本文记录一些方 ...
- kettle modified javascript 步骤的一个例子
例子里用到的 org.htmlparser.Parser 是一个html 的解析器,可以在 sourceforge 上下载. 这个例子使用 org.htmlparser.Parser 包来解析一个 h ...
- kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询
kettle中使用javascript步骤和fireToDB函数实现自己定义数据库查询 如果你须要实现非传统的数据库查询操作.为了讨论这样的情景,我们如果你须要读取数据库中的正則表達式,然后检查输入的 ...
- Eclipse去除JavaScript验证错误
这篇文章主要是对Eclipse去除js(JavaScript)验证错误进行了介绍.在Eclipse中,js文件常常会报错.可以通过如下几个步骤解决 第一步: 去除eclipse的JS验证: 将wind ...
- 【转】Eclipse去除js(JavaScript)验证错误
这篇文章主要是对Eclipse去除js(JavaScript)验证错误进行了介绍.在Eclipse中,js文件常常会报错.可以通过如下几个步骤解决 第一步:去除eclipse的JS验证:将window ...
- JavaScript 的错误(Error)与异常(Exception)处理
PHP很少用到错误处理,因为框架帮了大忙,所以基本上没有主动接手过PHP的错误.PHP是偏后端的动态处理语言,和用户的关系不大,所以用户不会关心是否出现了报错.但是JavaScript就非常不同了,j ...
- Kettle中JavaScript内置函数说明
本文链接:https://blog.csdn.net/u010192145/article/details/102220563 我们在使用JavaScript组件的时候,在左侧核心树对象栏中可以看到K ...
- javascript的错误处理
1 onerror事件,实例代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind= ...
- kettle转换JavaScript获取命令行参数
日常开发中由于很多参数是变化的,需要在部署时才能确定.而写在配置文件里又显得很笨重,因而可以运行时实时指定.那么kettle是怎么获取命令行中的参数的呢? kettle可以通过转换里的JavaScri ...
随机推荐
- 为什么tap事件绑定在document上,而不是对象本身上
1.在移动端前端开发,click事件有300ms的延时,为了提升用户体验,快速响应.zepto添加了tap事件.tap是在手指触屏横纵向移动距离小于30px,触发tap事件.移动距离的判断是通过tou ...
- 达到J2EE在后台action控制接待javascript弹出的对话框
1.后台Action于: request.setAttribute("message", "这项username要么password错误,请重新输入!"); 2 ...
- Android菜鸟的成长笔记(15)—— Android中的状态保存探究(下)
原文:Android菜鸟的成长笔记(15)-- Android中的状态保存探究(下) 在上一篇中我们简单了解关于Android中状态保存的过程和原理,这一篇中我们来看一下在系统配置改变的情况下保存数据 ...
- UVA 1546 - Complete the sequence!(差分法)
UVA 1546 - Complete the sequence! 题目链接 题意:给定多项式前s项,求出后c项,要求尽量小 思路:利用差分法,对原序列求s - 1次差分,就能够发现规律,然后对于每多 ...
- 在线maven
仓库
findmaven.net是一个查找Jar和查找Maven的Maven仓库搜索引擎.它能够依据Java开发人员提供的Class名或者Jar名找到包括它的Jar,同一时候提供Jar的Maven仓库链接, ...
- Git显示漂亮日志的小技巧
Git的传统log如下所示,你喜欢吗? 看看下面这个你喜不喜欢?(点击图片看大图) 要做到这样,命令行如下: 1 git log --graph --pretty=format:'%Cred%h%Cr ...
- URAL - 1966 - Cycling Roads(并检查集合 + 判刑线相交)
意甲冠军:n 积分,m 边缘(1 ≤ m < n ≤ 200),问:是否所有的点连接(两个边相交.该 4 点连接). 主题链接:http://acm.timus.ru/problem.aspx? ...
- Sublime Text 3 搭建Go开发环境(Windows)
一.安装GO 如果已经环境已经配置好,这一步省略.... 1.下载并安装go sdk 2.配置环境变量 (1). 新建 变量名:GOBIN 变量值 :F:\Go\bin (2). 新建 变量名:GOA ...
- form 为什么上传文件enctype现场
FORM要素enctype属性指定表单数据server当提交所使用的编码类型,默认默认值它是"application/x-www-form-urlencoded". 这样的编码方式 ...
- CodeForces 69D Dot (游戏+记忆)
Description Anton and Dasha like to play different games during breaks on checkered paper. By the 11 ...