SISS变量 -

时间:2011-09-27 20:30:32

标签: variables ssis

我在包级别创建了用户定义的SSIS变量。

示例:以下是varibales

v1 = 10

v2 = 20

V3

结果应该是V3 = V1 + V2我应该在控制流中给出这个表达式,我会得到结果

请帮忙

由于

2 个答案:

答案 0 :(得分:3)

我是否遗漏了某些内容,或者expression是否足够?

给定如上所述定义的变量

Variables window

在变量v3上将“Evaluate as Expression”设置为True,对于Expression,使用@ [User :: v1] + @ [User :: v2](或单击省略号并使用WYSIWYG编辑器构建表达式)

Properties window

如果您注意到v3的粉红色角落,那是因为我运行了一个名为BIDSHelper的加载项,它可以帮助您完成SSIS开发任务,但不会影响我的解决方案的工作。

答案 1 :(得分:1)

您可以在脚本组件中操作变量。如果您使用的是SQL-Server 2005,那么您可以使用VB.Net,如果您使用的是2008,则可以选择使用它或C#.net。

下面是一些(VB.net)代码示例,我用来获取变量(在我的情况下是字符串),操作它们,并将它们发送回变量存储区域:

Dim logFilename As String
Dim logFilePath As String

' create filename
logFilePath = Dts.Variables("LogFilePath").Value.ToString()
curDate = Now().ToString("yyyyMMdd")
logFilename = "test-" & curDate & ".Log"
Dts.Variables("LogFileName").Value = logFilename

对你的数字做同样的事情,在脚本组件的内容中(我对VB有点生疏)

Dim v1 as Int
Dim v2 as Int
Dim v3 as Int

// get your variables from the package 
v1 = Dts.Variables("v1").Value
v2 = Dts.Varuables("V2").Value
v3 = v1 + v2
// set your result back to the package
Dts.Variables ("v3").Value = v3