存储SSIS包变量中函数的返回值

时间:2016-10-26 18:23:02

标签: sql-server tsql variables ssis

我想使用执行SQL步骤select function_name()返回数据类型decimal(16,4)的值并将其存储在SSIS变量中,然后使用该变量并将其作为参数传递给SP在下一步中。但是,当我这样做并执行步骤时,输出总是为0,我猜测我设置变量的方式是坏的还是我没有正确传递,有人可以请帮忙!

2 个答案:

答案 0 :(得分:1)

你可以在TSQL中这样做......

DECALRE @fnResult DECIMAL(16,4)

SET @fnResult = dbo.UFn_getSaleDollar()

EXEC someProcedure @procVariable = @fnResult

答案 1 :(得分:1)

您希望使用SSIS执行SQL任务,并特别注意参数映射和结果集选项卡。请阅读此内容以了解如何正确映射输入和输出:

https://msdn.microsoft.com/en-us/library/cc280502.aspx#Return_codes

需要一些时间(通常超过一分钟,不到一小时)才能让它发挥作用。

https://www.simple-talk.com/sql/ssis/ssis-basics-using-the-execute-sql-task-to-generate-result-sets/