如何从多个FTP子文件夹中检索文件?
我有下一个结构:
我找到了下一个答案
一种方法是将每个源文件夹放在包中的变量中。这将允许您为每个变量设置一个循环容器,并将每个路径作为参数传递给您的ftp任务。会有一些开销,因为你将构建和销毁每个循环的ftp连接,但这会让你进入一个参数化的解决方案。
但我不能"将每个源文件夹放在包中的变量中。
有人可以告诉我如何完成这项任务吗?
答案 0 :(得分:0)
如果SSIS FTP任务无法递归下载文件夹(我不知道,但看起来像你要问的那样),只需使用执行进程任务启动外部可编写脚本的FTP客户端这可以做到这一点。
大多数FTP客户端都可以递归下载文件夹(Windows内置命令行FTP客户端除外)。
您可以使用例如WinSCP FTP client。有using WinSCP with SSIS的指南。
(我是WinSCP的作者)
答案 1 :(得分:0)
您可以查找的其中一个选项是使用脚本任务来执行此操作。脚本任务是SSIS中嵌入的巧妙事物之一,它可以通过充分利用.Net库来执行任何开箱即用的组件无法提供的功能。
这是一个链接,解释如何做到 - http://microsoft-ssis.blogspot.com.au/2011/08/foreach-ftp-file-enumerator.html