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 ...
随机推荐
- Web Socket rfc6455 握 (C++)
std::string data((const char*)buf->data(),bytes_transferred); recycle_buffer(buf); std::string ke ...
- Iphone CodeSign error: no provisioning profile at path 错
今天在退房手续,变化了profile,当再次进行整理编译项目时.就出现了这个问题,在xCode 6 开发环境下出现了, 出现这个错误提示Code Sign error: Provisioning pr ...
- 同步特定源代码到 omni_rom源代码目录里面
#!/bin/bash base_path="/Volumes/Android/omnirom_5.0" #此目录是我存放源代码的目录 xiaomi_device="de ...
- ios pop 折叠动画
今天写了一个很有趣的电影太,我们可以去githoub下载. 这部动画是高级写作,我参考了它.而凝视,我希望你能看的懂. 各种动画.事实上,一些不起眼的开始.我也只是摸索. 我希望有更多的交流.[ ...
- Autodesk FBX SDK Program 中文 (二)
这是Autodesk FBX SDK学习笔记第二篇.下面部分汉字翻译自Autodesk FBX SDK Program.翻译人:有道翻译. 上一篇讲了一些FBX SDK的基本操作.创建FbxManag ...
- 利用Sails.js+MongoDB开发博客系统
http://yoyoyohamapi.me/categories/利用Sails-js-MongoDB开发博客系统/ 利用Sails.js+MongoDB开发博客系统 Apr 14, 2016 利用 ...
- HR筒子说:程序猿面试那点事(转)
小屁孩曾经有过4年的招聘经验,期间见识了各种类型的程序猿:有大牛.有菜牛:有功成名就,有苦苦挣扎不知方向.等后来做了一枚程序猿之后发现,HR眼中的程序猿和程序猿中的HR都是不一样的.有感与此,从HR的 ...
- Shuttle ESB 实践
http://blog.csdn.net/liu765023051/article/category/2482069
- 在AcGIS随着大数据的生成DEM
在ArcGIS产生DEM时间.数据来源是经常有的高程点.轮廓线,该高程点.等高线密集,可能有几千万.甚至亿高程点.轮廓线. 如果您使用这些矢量数据生成TIN.不能实现的,由于生成TIN时,支持的最大结 ...
- c# winform 中的 工具栏自动隐藏 splitter用法 带源码
c# winform 中的 工具栏自动隐藏 splitter用法 带源码 代码下载地址 http://download.csdn.net/detail/simadi/7649313