如何从作业中读取(下载/结果)文件名
How to read (downloaded / result) filename from job
在 Pentaho 9.1 作业中,使用“从 SFTP 获取文件”步骤,我下载了一个 CSV 文件。我想在“邮件”步骤的电子邮件主题行中使用下载的文件名。
我曾尝试将其称为变量,但它实际上并不是一个变量,而是一个“结果”值。例如,如果我在下面尝试过...
下载的文件名=“somefile.csv”
“主题”的“邮件”步骤中的语法 =“文件处理完成:${short_filename}”
当电子邮件发送的主题恰好是“文件处理完成:${short_filename}”时,我需要它是“文件处理完成:somefile.csv”
我们可以从结果中获取文件信息。但不幸的是,这一步仅在改造中可用。因此,我们需要帮助一个转换来读取文件名。我已经为你准备了一个SOLUTION。您需要为 SFTP 和 MAIL 配置提供正确的信息。也请 运行 作业“getFromSFTP”。
- [getFromSFTP.kjb]这里我从sftp下载csv文件,发送文件信息给transformation
- [getFileName.ktr]这里读取文件信息,将文件名发送到另一个作业进行邮件发送。
- [sendMail.kjb] 此作业仅用于发送文件名 = ${filename1}
的邮件
在 Pentaho 9.1 作业中,使用“从 SFTP 获取文件”步骤,我下载了一个 CSV 文件。我想在“邮件”步骤的电子邮件主题行中使用下载的文件名。
我曾尝试将其称为变量,但它实际上并不是一个变量,而是一个“结果”值。例如,如果我在下面尝试过...
下载的文件名=“somefile.csv”
“主题”的“邮件”步骤中的语法 =“文件处理完成:${short_filename}”
当电子邮件发送的主题恰好是“文件处理完成:${short_filename}”时,我需要它是“文件处理完成:somefile.csv”
我们可以从结果中获取文件信息。但不幸的是,这一步仅在改造中可用。因此,我们需要帮助一个转换来读取文件名。我已经为你准备了一个SOLUTION。您需要为 SFTP 和 MAIL 配置提供正确的信息。也请 运行 作业“getFromSFTP”。
- [getFromSFTP.kjb]这里我从sftp下载csv文件,发送文件信息给transformation
- [getFileName.ktr]这里读取文件信息,将文件名发送到另一个作业进行邮件发送。
- [sendMail.kjb] 此作业仅用于发送文件名 = ${filename1} 的邮件