2013-07-17 259 views
2

我停留在上日期部分在我的SSIS包SSIS日期功能

我在3个variabels在我的包&我用这些表达

1) @Days - 8 

2) @DateDiff - (DT_WSTR,4)YEAR(GETDATE()) + "-" + RIGHT("0" + (DT_WSTR,2)MONTH(GETDATE()), 2)+ "-"+ RIGHT("0" + (DT_WSTR,2)DAY(DATEADD("dd", - @[User::Days] , GETDATE())), 2) 

3) @datestarted - DATEDIFF("dd", (DT_DBTIMESTAMP) @[User::DiffDate],(DT_DBTIMESTAMP) @[User::PatDate] ) 

这里patCon是相同GETDATE()。

这里如果我改变了一天达到30它不会带我到2013年6月17日它会告诉我相同的日期2013-07-17(假设gatedate()是2013年7月17日)。

我想要动态更改日期的表达式 假设如果我放置了Days - 50,那么它也应该更改月份。如果天数 - 500它会改变月份以及年份。

请让我知道的进一步detail.Appreciated你的时间和Help.I wnat发展这只在包侧而不是T-SQL侧。

--343

回答

2

你只是在你的应用到DATEADD在当天子取的部分,你需要,如果你想让他们的影响将它应用到月份和年份了。我相信是这样的:

(DT_WSTR,4)YEAR(DATEADD("dd", - @[User::Days] , GETDATE())) + "-"  
+ RIGHT("0" + (DT_WSTR,2)MONTH(DATEADD("dd", - @[User::Days] , GETDATE())), 2) + "-" 
+ RIGHT("0" + (DT_WSTR,2)DAY(DATEADD("dd", - @[User::Days] , GETDATE())), 2) 
+0

谢谢你解决了我的问题。 – 343