I'm new with pentaho CDE and any help is greatly appreciated. I have a pentaho CDE report with 2 btables (cde plugin) which get their data from 2 different datasources. The problem is that after the btables are executed, the connection with the first one (in the order of execution) is lost and it stays "locked" with the last btable executed. The result is that I can't use the first btable anymore. I couldn't find any similar situation. Is there a workaround? Thanks!

有帮助吗?

解决方案

I need more details, but i think i know what is your problem. You have a CDE dashboard with two or more BTable components and after all tables are rendered when you make some operations in first BTable the datasource conection will be a combination between this datasource and the last one accessed and result an error.

This is happend when you have different jndi per each BTable, because this plugin makes the datasource file in this form: catalog_jndi.cda

In this case you need to force BTable to use the proper CDA file, using pre execution.

A simple way is to add in Pre execution field of each BTable component:

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

Where render_BTableName is made by concatenate the word render_ and the name of BTable component (BTableName).

UPDATE: this was resolved in version 2.x https://github.com/biztech-it/BTable/issues/4

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top