Pentaho - 将数据放入任何Excel字段

时间:2018-06-13 17:53:01

标签: excel pentaho pentaho-spoon

Excel Screenshot

我是Pentaho的新手,我正在尝试将数据放入我需要的任何特定单元格中的Excel表格中。我目前有表输入,但数据与我的输出excel模板(Excel Writer)并不完全对齐。我怎样才能选择Pentaho将数据插入的位置?我试图使用多个转换来写入每一列,但我不知道是否有更好的方法。

在附图中,您会看到几列。我需要在标题为" Count"," Completed"," Pending"。

的每一列中插入一个计数查询。

谢谢!

3 个答案:

答案 0 :(得分:0)

PDI(以及所有ETL工具)的技巧是根据需要生成输出,完成后,将结果放在Excel文件中。这样就可以避免将每个数据值定位到特定的单元格。

在您的情况下,您需要生成一个16列流,其中包含日期,ABP Enrolement Count,ABP Enrolement Completed,ABP Enrolement Pending,APB拒绝Count,...并将此结果写入Excel Writer。

为了实现这一流程,您可能需要对输入进行非规范化和分组,但很难回答不知道输入数据的格式。

答案 1 :(得分:0)

当我运行输入查询时,它就是这样显示的。请看图片。查询会显示日期列和计数列。我很好地写入了从单元格A4开始的excel模板。此查询可以涵盖“ABP注册”下的日期,计数列。现在我需要再次为它旁边的已完成列运行该查询,并使其在C4上启动。我需要为所有16列做同样的事情。另一件事是我只需要第一列的日期列。其他专栏只是Counts。

enter image description here

答案 2 :(得分:0)

您的问题是迭代列,在所需的单元格上写入数据。您需要在将列(A,B,C ..)作为变量传递的查询之前创建一个流,您将在Excel Writer步骤中使用该变量。

您必须将Excel写入步骤配置为"覆盖现有单元格"而不是'#34;将现有的细胞向下移动"否则该步骤将继续在表上写入新行。 您的问题似乎在于精确定位Excel编写器将输出数据的位置。 该步骤的内容选项卡应如下所示.. enter image description here

使用此配置,excel writer将从$ {column}变量开始(C,后跟您需要的任何内容,这是您迭代的位置)并覆盖单元格$ {column} 4,$ {column} 5等等