pentaho 数据集成动态文件名

Posted

技术标签:

【中文标题】pentaho 数据集成动态文件名【英文标题】:pentaho data integration dynamic file name 【发布时间】:2016-04-27 15:05:35 【问题描述】:

这里是 PDI 的新手。需要每天将数据从 postgresql 数据库中的视图输出到文件。输出文件将类似于 xxxx_20160427.txt,因此需要在文件名中附加动态日期。怎么做?

编辑-----

我在这里并不清楚如何添加动态日期,我试图在文件名中添加的不仅仅是日期,还有可选的其他部分。例如,在末尾添加序列号(01):xxxx_2016042701.txt 等。所以我真正的问题是如何制作动态文件名?在其他 ETL 工具中,例如SSIS 将是一个简单的表达式。不确定在 PDI 中是如何完成的?

【问题讨论】:

【参考方案1】:

在您的Text file output 步骤中,只需选中“在文件名中包含日期?”在文件选项卡下。

【讨论】:

我已经看到了解决日期部分的选项,但还不够,我已经更新了我的问题。 是的,在这种情况下,@Jipipayo 的解决方案应该可以工作。【参考方案2】:

您可以使用修改后的 Java 脚本值 STEP 创建动态文件名变量。

然后在“文本文件输出”步骤中单击“接受字段中的文件名”,然后选择您在上一步中声明的变量(本例中为 filename_var)。

【讨论】:

能否详细介绍一下修改过的java脚本这一步? 好的,我更新了我的答案,对js步骤有更详细的解释

以上是关于pentaho 数据集成动态文件名的主要内容,如果未能解决你的问题,请参考以下文章

Pentaho 数据集成用户定义的 Java 类

如何使用 Pentaho 数据集成提取电子邮件附件?

用于创建 Pentaho 报告的 Java 代码,此报告接受作为数据集成 (.ktr) 文件的输入

Pentaho 数据集成 (DI) 获取 SFTP 服务器目录中的最后一个文件

Pentaho 数据集成转换,从 csv 文件加载字段(Java API)

PENTAHO 数据集成中的流查找