【问题标题】:SSIS add multiple command lines in a com application process task argumentSSIS在com应用程序进程任务参数中添加多个命令行
【发布时间】:2017-04-15 19:16:49
【问题描述】:

我的 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 文件夹,并且不会关闭会话。

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

请帮忙!

【问题讨论】:

  • 我用一个 bat 文件修复它,但仍然想知道它是否可以在参数中使用
  • 尝试在前面添加option batch continue?或者off,abort,on,看具体反馈,我在下面留下了参考。

标签: ssis sql-server-2008-r2


【解决方案1】:

For your reference

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

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

【讨论】:

    猜你喜欢
    • 2011-11-05
    • 1970-01-01
    • 2023-04-11
    • 2016-07-20
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    • 2010-09-08
    相关资源
    最近更新 更多