You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SSIS包中创建追加当前日期的文件并复制重命名Excel文件

嘿,你已经快搞定你的SSIS包了,用FileSystem Task来处理这个文件复制重命名的需求完全是正确的思路!我来给你一步步拆解具体怎么配置,确保能顺利生成带日期后缀的目标文件:

步骤1:创建动态文件名所需的SSIS变量

首先得设置几个变量来实现日期的动态拼接,这样每次运行包都会自动生成对应日期的文件名:

  • 新建字符串类型的变量:
    • SourceFilePath:填写源文件的完整路径,比如 C:\SourceDir\InboundScrapWeights.xlsx
    • DestFolderPath:填写目标文件夹的路径,比如 C:\TargetDir\(注意末尾要加斜杠)
    • DestFileName:用表达式生成带日期的文件名,表达式内容如下:
      "InboundScrapWeights_" + (DT_WSTR,4)YEAR(GETDATE()) + RIGHT("0" + (DT_WSTR,2)MONTH(GETDATE()),2) + RIGHT("0" + (DT_WSTR,2)DAY(GETDATE()),2) + ".xlsx"
      
      这个表达式会生成类似 InboundScrapWeights_20240520.xlsx 的格式,你可以右键变量选择「Evaluate Expression」验证格式是否正确
    • DestFullPath:把目标文件夹和文件名组合起来,表达式为:
      @[User::DestFolderPath] + @[User::DestFileName]
      
步骤2:配置FileSystem Task

打开FileSystem Task的编辑器,按以下选项设置:

  • Operation:选择 Copy file(这个操作可以直接完成复制+重命名,无需分开执行复制和改名)
  • SourceConnection:选择「」,然后选择「Existing File」,直接关联到@[User::SourceFilePath]变量(这样源路径更灵活,后续修改只需改变量)
  • DestinationConnection:同样选择「」,选择「File」,然后关联到@[User::DestFullPath]变量,这样目标路径和文件名就会动态生成
  • OverwriteDestination:根据你的需求设置为True或False——如果允许覆盖目标文件夹中同名的旧文件,就设为True
额外注意事项
  • 如果你需要的不是当前系统日期,而是源文件的创建日期,那上面的GETDATE()就不适用了。这种情况下,你需要用Script Task来读取源文件的创建时间,再赋值给DestFileName变量
  • 务必确认SSIS包运行的账户拥有源文件的读取权限,以及目标文件夹的写入权限,避免运行时出现权限错误

内容的提问来源于stack exchange,提问作者Mike

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:24:57