CDA水壶over kettleTransFromFile差异行为与Pentaho数据集成

时间:2017-01-26 14:10:11

标签: kettle data-integration pentaho-cde pentaho-data-integration

我使用CDE在pentaho服务器上创建一个表单。此表单是包含一些输入字段的表。单击按钮,将生成一个作为参数值发送的数组。 IN db表我有3列:alfa,beta,gamma。

//var data = JSON.stringify(array);
var data = [
 {"alfa":"some txt","beta":"another text","gamma": 23},
 {"alfa":"stxt","beta":"anoxt","gamma": 43}
]

我创建了一个按预期运行的水壶转换。这两行数组插入数据库中,但是当我在Pentaho中通过kettleTransFromFile使用CDA水壶运行相同的水壶转换时,只插入第一行。 这是我的转变:

enter image description here

  1. 获取变量:data(string)
  2. 修改的Java脚本值: data_decode 包含json数组

    var data_decode = eval(data.toString());

  3. JSON输入:alfa - $ .. [0] .alpha,beta - $ .. [0] .beta,gamma - $ .. [0] .gamma

  4. tableinsert - 在数据库中插入。
  5. ...从勺子,水壶命令行都可以,但不是来自Pentaho。 有什么问题?

    谢谢! 地理位置

    <小时/> 的更新

    也许它错过了配置或错误或超自然,但我没有使用这种方法。我找到了一个简单的方法:我用一个简单的java代码(使用beanshell)创建一个可编写脚本的脚本数据源。现在它按预期工作了。我将此表单移到Sparkl插件中。谢谢。

    这个问题仍然存在,也许有人想尝试这种方法。

1 个答案:

答案 0 :(得分:0)

请使用正确的JSONPath消除副作用:$.*.alpha