如何从服务器每天生成的 FTP 中获取动态文件?
How can I fetch a dynamic file from FTP server-generated every day?
FTP 位置每天都有交易输入 CSV 文件。我需要读取这些输入文件并在每日批量执行时处理它们。文件的名称每天都保持不变,但日期每天都会附加在文件名的末尾,
例如:
Day1
General_Ledger1_2020-07-01,
General_Ledger2_2020-07-01,
General_Ledger3_2020-07-01,
General_Ledger4_2020-07-01,
General_Ledger5_2020-07-01
Day2
General_Ledger1_2020-07-02,
General_Ledger2_2020-07-02,
General_Ledger3_2020-07-02,
General_Ledger4_2020-07-02,
General_Ledger5_2020-07-02
如何在每次作业运行时将此日期信息附加到输入文件名?
我之前遇到过类似的问题,这可以使用文件路径中的计算参数来解决。在这里,您可以创建将动态检索文件的表达式。
例子,
CONCAT( UPPER(lit('$(Prefix)')), ADD_DAYS( TODATE(lit('$(currentTime)'), 'yyyy-mm-dd'), 'yyyy-mm-dd' ,-1),'.csv')
表达式中断:
$(currentTime)
:此系统参数将获取当前日期(这还将包括时间戳)。
(TODATE(lit('$(currentTime)'), 'yyyy-mm-dd')
: TODATE
将只从整个时间戳中获取日期,格式为 ‘yyyy-mm-dd’
.
ADD_DAYS(TODATE(lit('$(currentTime)'), 'yyyy-mm-dd'), 'yyyy-mm-dd' ,-1)
:ADD_DAYS
此处会将 -1
添加到从中检索的日期。 TODATE()
。因此 (2020-04-24) + (-1)
会给我们 2020-04-23
$(Prefix)
:$(Prefix)
将是用户将在运行时提供的字符串类型的用户定义输入参数 – 因为这
前缀将始终是动态的。
CONCAT()
: 最后把所有的结果合并起来形成准确的文件路径 CONCAT()
就可以了。也在一些静态之间
添加字符串,因为对于要读取的每个文件,它始终是固定的。
FTP 位置每天都有交易输入 CSV 文件。我需要读取这些输入文件并在每日批量执行时处理它们。文件的名称每天都保持不变,但日期每天都会附加在文件名的末尾,
例如:
Day1
General_Ledger1_2020-07-01,
General_Ledger2_2020-07-01,
General_Ledger3_2020-07-01,
General_Ledger4_2020-07-01,
General_Ledger5_2020-07-01
Day2
General_Ledger1_2020-07-02,
General_Ledger2_2020-07-02,
General_Ledger3_2020-07-02,
General_Ledger4_2020-07-02,
General_Ledger5_2020-07-02
如何在每次作业运行时将此日期信息附加到输入文件名?
我之前遇到过类似的问题,这可以使用文件路径中的计算参数来解决。在这里,您可以创建将动态检索文件的表达式。
例子,
CONCAT( UPPER(lit('$(Prefix)')), ADD_DAYS( TODATE(lit('$(currentTime)'), 'yyyy-mm-dd'), 'yyyy-mm-dd' ,-1),'.csv')
表达式中断:
$(currentTime)
:此系统参数将获取当前日期(这还将包括时间戳)。(TODATE(lit('$(currentTime)'), 'yyyy-mm-dd')
:TODATE
将只从整个时间戳中获取日期,格式为‘yyyy-mm-dd’
.ADD_DAYS(TODATE(lit('$(currentTime)'), 'yyyy-mm-dd'), 'yyyy-mm-dd' ,-1)
:ADD_DAYS
此处会将-1
添加到从中检索的日期。TODATE()
。因此(2020-04-24) + (-1)
会给我们2020-04-23
$(Prefix)
:$(Prefix)
将是用户将在运行时提供的字符串类型的用户定义输入参数 – 因为这 前缀将始终是动态的。CONCAT()
: 最后把所有的结果合并起来形成准确的文件路径CONCAT()
就可以了。也在一些静态之间 添加字符串,因为对于要读取的每个文件,它始终是固定的。