I have a process that needs to download a file from an FTP server. Parse it and add the rows into a PostgreSQL database table.
Currently, my job looks like this:
tFTPGet_1 - OnSubjobOk -> tFileList_1 - iterate -> tFileInputDelimited_1 - row 1 (Main) -> tMap_1 - row 1 (Main) -> tpostgresqlOutput1ft
tFTPGet_1 selects a file (or files) from a remove folder using a mask: "cmgcfscommfileout-*.csv" there may be more than one (but there is usually only one and we don't the the detail for the glob '*' for certian; It's a date but it might be any date). It then downloads the file into a specific folder "Downloads/Commissions/CUNA/CFS".
Currently, tFIleList_1 gets any files named "*.csv" in "Downloads/Commissions/CUNA/CFS". While this works it's not really how I'd like to do it. I'd love to send the output of tFTPGet_1 into tFileDelimited_1 directly but I don't see any global variables that I could use like in tFileList_1 (I'm using ((String)globalMap.get("tFileList_1_CURRENT_FILEPATH")) to extract the filename in tFileDelimited_1 from tFileList_1. But as I said I don't see any output globals that I could use for tFTPGet_1.
Is there any way to do this?
Any help is gratefully appreciated.
as You describe - it not supported
as I understand - main idea proceed each file sequently, without waiting while all downloaded
If Your server support not only FTP/SFTP, You can use tSCPFileList for list remote folder, and then use tSCPGet (or continue tFTPGet with file mask from variable)
Join us live for a sneak peek!
Accelerate your data lake projects with an agile approach
Create systems and workflow to manage clean data ingestion and data transformation.
Introduction to Talend Open Studio for Data Integration.