gpt4 book ai didi

SSIS:在两个地方使用时间的变量表达式

转载 作者:行者123 更新时间:2023-12-01 12:30:21 24 4
gpt4 key购买 nike

我有一个变量表达式,它附加了一些日期部分以在两个单独的任务中用作文件名。

但是当第二个任务命中时,时间已经改变,变量也随之改变。基本上,我在一个文件夹中创建一个文件用于 FTP 导出。但是,当 FTP 任务去拾取它时,它“不存在”,因为自文件初始创建以来时间已经改变,并且 FTP 任务试图拾取它。

平面文件 name 和 FTP LocalPath 都使用变量“FilePath”,它是:

"C:\\WFSDEV_WSD_SHIP_FROM_STORE_" + (DT_WSTR,4)DATEPART("yyyy",GetDate()) + 
RIGHT("0" + (DT_WSTR,2)DATEPART("mm",GetDate()) ,2) +
RIGHT("0" + (DT_WSTR,2)DATEPART("dd",GetDate()),2) +
RIGHT("0" + (DT_WSTR,2)DATEPART("hh",GetDate()),2) +
RIGHT("0" + (DT_WSTR,2)DATEPART("mm",GetDate()),2) +
RIGHT("0" + (DT_WSTR,2)DATEPART()),2) +
".VD01"

screenshot1

有没有办法在包的开头设置这个 var 并从那里不加改变地使用它?

最佳答案

不要使用 GETDATE(),因为它会在您每次检查时进行评估。

相反,选择一个在 SSIS 包期间保持不变但在包开始时更新的值。我的偏好是 @[System::StartTime] 但有些人可能更喜欢 @[System::ContainerStartTime] 前者在包开始执行时设置,另一个在内部重置每个容器(ForEach 循环等)

关于SSIS:在两个地方使用时间的变量表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34754766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com