0

我是 pentaho CDE 的新手,非常感谢任何帮助。我有一个带有 2 个 btables(cde 插件)的 pentaho CDE 报告,它们从 2 个不同的数据源获取数据。问题是在执行 btable 之后,与第一个(按执行顺序)的连接丢失,并且在执行最后一个 btable 时保持“锁定”状态。结果是我不能再使用第一个 btable。我找不到任何类似的情况。有解决方法吗?谢谢!

4

1 回答 1

2

我需要更多细节,但我想我知道你的问题是什么。您有一个带有两个或更多 BTable 组件的 CDE 仪表板,当您在第一个 BTable 中进行某些操作时呈现所有表之后,数据源连接将是此数据源和最后一个访问的数据源之间的组合,并导致错误。

当每个 BTable 有不同的 jndi 时,就会发生这种情况,因为这个插件以这种形式生成数据源文件:catalog_jndi.cda

在这种情况下,您需要强制 BTable 使用正确的 CDA 文件,使用pre execution

一个简单的方法是在每个 BTable 组件的Pre execution字段中添加:

if(this.name == "render_BTableName"){
     render_BTableName.cda.path=bt.helpers.cda.getFilePath("mondrian:/YourCatalog","YourJNDI");
} 

其中render_BTableName是通过连接单词 render_ 和 BTable 组件的名称 ( BTableName ) 生成的。

更新:这已在版本 2.x https://github.com/biztech-it/BTable/issues/4中解决

于 2014-05-15T19:34:19.313 回答