我如何做我的Pentaho报告采取Excel数据源文件一起BA / BI服务器?

我想创build基于Excel文件的Pentaho报表(带报表devise器)。 但是,我想要这种Excel文件的通用types,并使用Pentaho数据集成(Kettle)转换从它select一个特定的子集。

我可以使它与Pentaho报表devise器一起工作:我创build了一个转换数据源,它转而读取一个Excel文件,所有三个文件(报表,转换和Excel)位于相同的目录中。

如何在发布到BA(BI)服务器时将其工作?

我已经遵循这个答案( 在Pentaho BI服务器中使用PDI转换作为报表参数的数据源 ),让Pentaho BA服务器加载我的转换,所以现在我可以有一个基于从Report Designer文件本身加载的转换的报表。 我的问题是我如何将Excel文件作为转换源使用? 我试图把它作为一个资源,并引用它作为文件名没有path在转换,但它没有奏效。

这个很棘手,因为你需要参考PRPT里面的文件(基本上是一个ZIP文件)。 这是一个适合我的程序:

1)在Pentaho报表devise器(PRD)中添加Excel(或其他)文件作为资源。 对于我的testing,我使用了PDI示例中的customers-100.txt文件,并将资源命名为“customers-100”。 然后我把报告保存为prd_test.prpt。

2)打开勺子,并在与PRPT相同的目录中创build一个新的PDI转换。 我使用了文本文件input和文件名,我把以下内容:

邮政编码:$ {} Internal.Transformation.Filename.Directory /prd_test.prpt!customers-100

“zip”是一个VFSscheme,告诉PDI这是一个ZIP文件。 variables是转换位置(应该与PRPT相同),并且bang(!)告诉VFS进入PRPT包并查找名为customers-100(资源的名称)的文件。 我想我也必须告诉它混合行结束和US-ASCII编码,我不知道这些是否真的有必要或者是否适用于您的Excel步骤。

3)在PRD中打开prd_test.prpt,将转换添加为资源(我将其命名为prdTest),然后创build一个针对资源名称(在这种情况下是prdTest,而不是文件名)的查询。 保存PRPT,closuresPRD,然后重新启动。

我没有尝试这个发表的报告,我只是从珠三angular工作。

如果遇到错误,并且控制台显示“Stream closed”,请尝试重新启动PRD和/或重新导入资源。