【问题标题】:File not Moved from one directory to another when SSIS Package is scheduled from task scheduler从任务计划程序计划 SSIS 包时,文件未从一个目录移动到另一个目录
【发布时间】:2020-06-06 03:11:14
【问题描述】:

我正在 SQL Server 2016 环境中使用包部署模型开发 SSIS 包。 我有一个文件移动功能,它在 Visual Studio 中运行良好,并且当它使用以下命令从命令提示符手动运行时

"C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn\DTExec.exe" /F "D:\project\Package1.dtsx"

当来自任务计划程序的计划相同时,文件不会从同一系统上的一个文件夹移动到另一个文件夹。

最初我使用文件系统任务,它的行为也如上所述。后来我用脚本任务替换了它并写了下面的代码行。还是不行。

        try
        {
            System.IO.File.Move(Convert.ToString(Dts.Variables["User::FileName"].Value), Convert.ToString(Dts.Variables["User::ProcessFolder"].Value));
        }
        catch (Exception)
        {


        }

【问题讨论】:

  • 你实际上有一个空的 catch 块?
  • 让它来找你。在事件日志或其他任何内容中。
  • 从 Visual Studio 或命令提示符运行时文件移动工作正常
  • 但是当从任务调度程序运行时出现问题,你根本不在乎它是什么。请记录异常。记录Dts.Variables["User::FileName"].ValueDts.Variables["User::ProcessFolder"].Value 的值以及异常情况

标签: c# ssis


【解决方案1】:

我也有同样的问题。我很想记录异常。就我而言,也不例外。任务运行成功完成(至少输出是这样说的)。但是,没有文件被移动,也没有创建日志文件。在我可以看到的日志和报告中,一切看起来都很正常。

我发现了两件事,不知道是哪一个解决了它。确保脚本任务与服务器具有相同的平台目标(32 位和 64 位)。每人:SSIS is executing successfully, but it doesn't seem to be running the script task portion

1) 编辑脚本

2) 右键单击​​看起来像 GUID 的 c# 项目名称并选择属性

3) 选择属性页左侧的Build菜单

4) 设置平台目标 = x86

我还确保数据工具中的目标与服务器版本匹配。在开发者设置中:

1) 右键单击​​项目并选择属性

2) 在配置属性下选择常规

3) 将 TargetServerVersion 设置为您的目标 SQL 服务器。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-20
    • 1970-01-01
    • 2019-09-26
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    • 2014-12-04
    • 2021-11-12
    相关资源
    最近更新 更多