在 pentaho CDE 中通过kettleTransFromFile 将参数传递给 pentaho 水壶

Posted

技术标签:

【中文标题】在 pentaho CDE 中通过kettleTransFromFile 将参数传递给 pentaho 水壶【英文标题】:Pass parameter to pentaho kettle over kettleTransFromFile in pentaho CDE 【发布时间】:2013-12-17 09:33:48 【问题描述】:

我用的是pentaho CE biserver-ce-4.8.0稳定版。我想创建从 mongodb 获取数据的仪表板,所以我在数据集成中创建了 ktr 文件,它与 mongodb 通信并从 mongodb 获取数据。之后,我在 CDE 仪表板数据源中使用了 .ktr 文件,下面是 ktr 文件中的一些部分

<hostname>localhost</hostname>
<port>27017</port>
<use_all_replica_members>N</use_all_replica_members>
<db_name>$db_name</db_name>
<fields_name/>
<collection>test</collection>
<json_field_name>json</json_field_name>
<json_query/>
<auth_user/>
<auth_password>Encrypted </auth_password>
<auth_kerberos>N</auth_kerberos>
<connect_timeout/>
<socket_timeout/>
<read_preference>primary</read_preference>
<output_json>Y</output_json>
<query_is_pipeline>N</query_is_pipeline>
<execute_for_each_row>N</execute_for_each_row>`

和 $db_name 是我的参数,我想通过 url 传递这个参数,但是当我将 db_name 作为 url 传递并读取该 url 参数时,我得到了 url 参数,但我的 ktr 文件不理解参数,因此它被创建为 db在名为 $db_name 的 mongo 中,所以我被传递给 pentaho CDE 中的 ktr 文件?

【问题讨论】:

【参考方案1】:

阅读 Pentaho Data Integration 4 Cookbook 后,我找到了问题的解决方案。我使用以下方法解决了我的问题。

1> First create transformation using PDI and that transformation file add mongodb input.
2> Click on edit->settings and select parameters and add parameter name as db_name.
3> In mongodb input set database name as $db_name and set collection name save that transformation file.
4> Now login to pentaho bi server and create new CDE dashboard.
5> go to datasource and select kettle query and add kettle transformation file and add above created ktr file, in variable set arg as db_name and value blank.
6> In same datasource add parameters set name as db_name and value your data base name which you want to pass to ktr file in my case db name as demo.
7> Set above ktr to component panel and it work fine

更多参考click here

【讨论】:

以上是关于在 pentaho CDE 中通过kettleTransFromFile 将参数传递给 pentaho 水壶的主要内容,如果未能解决你的问题,请参考以下文章

Pentaho CDE 图表

Saiku OLAP 向导 - “确定”按钮在 Pentaho 5.2 社区版(CDE)中不起作用

如何在CDE Pentaho中执行动态标题列?

在 pentaho 的 CDE 仪表板的表组件中创建新列,表示 2 列的总和

pentaho cde在sql查询中包含/排除where子句

如何在我的 Pentaho CDE 仪表板中添加注销按钮?