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 ...
随机推荐
- python遗产
1. python类方法的定义: class Animal(): def __init__(self,name): self.name=name; def show(self): print s ...
- 基于Velocity开发自己的模板引擎
Velocity是一个基于java的模板引擎(template engine).它同意不论什么人只简单的使用模板语言(template language)来引用由java代码定义的对象. 当Veloc ...
- C# winForm里窗体嵌套
ShowAllPage sAllPage = new ShowAllPage(); sAllPage.FormBorderStyle = FormBorderStyle.None ...
- Unity3D 表对象分类中的实现(C#)
// Sort by distance in descending order private void SortTargetsByDistance () { targets.Sort(delegat ...
- ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl 后篇 --事件冒泡
原文:ASP.NET自定义控件组件开发 第四章 组合控件开发CompositeControl 后篇 --事件冒泡 CompositeControl 后篇 --事件冒泡 系列文章链接: ASP.NET ...
- cocos2d-x 3.1.1 学习笔记[17] 关于这些活动功能
供cocos2d-x通常使用的方法,我有一个好脸色.这项研究真的奖励. 向导首先,定义,实施一系列连续动作. 对于我们的行动能回调函数,我们必须申报并加以实施. void callBack(); vo ...
- Eclipse4.4设备egit插件提交本地项目代码到远程仓库
一.设备egit 打开Eclipse的Marketplace.在搜索框中输入egit就可以,能够看到Eclipse4.4已经默认安装了egit,当然假设有新版本号的egit公布的话,也能够在下图上点击 ...
- 读书时间《JavaScript高级程序设计》二:面向对象
接着上次的进度,开始看第6章. 第6章 面向对象的程序设计 理解对象 创建自定义对象最简单的方式就是创建一个 Object 的实例,然后为它添加属性和方法. var person = new Obje ...
- Storm基础知识
上一篇文章我们介绍一个简单的Storm起源,今天我去学习Storm一些主要的知识,他的基本使用基本的了解.幸运的是,,不是太困难,假设我们理解Hadoop的MapReduce模型的话.看这个也是很类似 ...
- 【ASP.NET】关于iframe的两个技巧
原文:[ASP.NET]关于iframe的两个技巧 最近在给朋友写个网站,虽然不大,但是也碰到了一些问题.这篇就为解决ASP.NET中关于IFRAME的两个很现实的问题提供解决方法.PS:呵呵,又做了 ...