SSIS 在 com 应用程序进程任务参数中添加多个命令行

标签 ssis sql-server-2008-r2

我的 SSIS 进程任务有问题。我想使用 winscp 从 sftp 站点获取文件。

我使用 winscp.com 应用程序,当手动填写以下参数时,它工作正常。

open sftp:\username:password@ftp.site.com hostkey="ssh 1024 00:00:00"
get *.csv H:\Transfer
close 
exit

现在我喜欢使用流程任务在 SSIS 任务中自动执行此过程。

我将以下参数放入计算表达式中,并将其作为参数添加到流程任务中

"sftp://" +  (DT_WSTR, 100)  @[User::ftpUsername]  + ":" +  (DT_WSTR,100) @[User::ftpPassword]  + "@" + (DT_WSTR,100) @[User::ftpSite]  + " -hostkey=" + (DT_WSTR, 100) @[User::sshKey]  + "\r \n"+ " get *.csv " + @[User::DownloadDirectory] + "\r \n"  + " close"+ "\r \n" + " exit " + "\r \n"

当我执行此任务时,会发生以下情况......(见图)

SSIS process task execute

自动登录有效,但它不会转到将 csv 文件从 sftp 站点获取到 H:\Transfer 文件夹的下一个命令,也不会关闭 session 。

如何使 SSIS 进程任务参数从求值表达式转到下一个命令行?

请帮忙!

最佳答案

For your reference

批量关闭|开启|中止|继续

启用批处理模式。在批处理模式下,自动回复任何选择提示并取消任何输入提示(在很短的时间间隔后)。 在批处理模式下,建议将 confirm 设置为 off 以允许覆盖。 当批处理模式设置为打开时,任何选择提示都会自动否定。除非提示有不同的默认答案(例如重新连接提示的默认“重新连接”答案),否则将使用默认答案(在很短的时间间隔之后)。另请参阅下面的重新连接时间选项。 值中止就像打开一样。此外,脚本被中止,当任何脚本命令失败或任何选择提示以“中止”答案(或类似)回复时。 当设置为继续时,任何选择提示都会自动回复“跳过”、“忽略”或类似的答案。 如果尚未设置,启用批处理模式会将重新连接时间(下面的重新连接时间选项)设置为 120 秒。 受影响的命令:几乎所有 默认值:中止使用/script 或/command 指定的命令;对于输入时指定的命令关闭。

关于SSIS 在 com 应用程序进程任务参数中添加多个命令行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40905765/

相关文章:

sql - SSIS 转换——将一列拆分为多列

xml - Sql Server - 定义 xmlns 的 XML 粉碎

tsql - 哪里存在 - 所有 - 分组依据?

sql-server - 如何备份文件流数据库?

ssis - 从 SSIS 脚本任务/脚本组件返回输出参数或变量

sql-server - SSIS 参差不齐的文件无法识别 CRLF

sql-server - 无法加载自定义 SSIS 任务。如何排除故障?

由于数据流的当前版本,SSIS 目标组件失败

sql-server - 了解 SQL Server 排序规则中的 Unicode 和代码页

sql-server - 将备份 SQL SERVER 2008R2 还原到 SQL SERVER 2008 时出错