1. 概述编辑
1.1 应用场景
FTP 服务器上的文件是自动更新的,每次通过新建文件更新数据。用户希望自动读取这些文件的所有信息并将信息存储到数据库表中。
1.2 实现思路
文件输入 算子+参数实现。
文件输入算子每天读取前一天新增的文件数据,将数据同步到数据库表中。
2. 前提条件编辑
1)若需要读取或者上传本地的 Excel 和 CSV 文件数据至 FineDataLink,需要新建一个「服务器本地目录」数据连接,并将要读取的文件放到%FDL%/webroot/WEB-INF/local_files/路径下,并且有该数据连接的使用权限。具体请参见:配置服务器本地目录数据连接
2)若需要读取远程 FTP/SFTP 服务器 Excel 和 CSV 文件数据,需要配置 FTP/SFTP数据连接,并且有该数据连接的使用权限。具体请参见:配置FTP/SFTP数据连接
本方案适用于 4.0.24 及之后版本。
3. 示例一:基于文件修改时间判断新增文件编辑
本示例适用于:文件夹中的文件名称不同,不定期新增文件。
示例数据:csv文件.zip
3.1 设置参数
1)新建定时任务。
2)点击参数设置,设置参数 time ,值为yyyy-mm-dd-1,代表 ${cyctime} 的前一天。如下图所示:
注:${cyctime} 为定时任务在 调度配置 中设置的每次运行的时间节点。

3.2 读取文件夹内数据
1)拖入「数据转换」节点,进入「数据转换」节点。
2)拖入「文件输入」算子,选择要读取的文件夹,「文件筛选」处设置读取新增的数据。
如果设置任务定时执行时间为每天晚上 12 点开始执行,那么每天此处筛选的就是从昨天晚上 12 点到今天晚上 12 点新增的文件。
「文件筛选」处的文件修改时间(lastModifiedTime)说明:「文件修改时间」的精确度仅到分钟,暂时无法精确到秒级别。
注:「文件输入」算子具体设置项介绍请参见:功能说明

3)点击「数据预览」,可看到新增的文件数据已被读取。如下图所示:

3.3 数据输出
1)拖入「DB表输出」算子,将新增数据输出到数据库表中。如下图所示:

2)点击右上角「保存」按钮。
3.4 定时执行
点击「调度配置」,定时执行任务。如下图所示:

3.5 结果展示

4. 示例二:

