我试图创建一个SSIS包,该包基于在循环中运行的存储过程的返回值循环。我不断收到超级无用的错误:
“错误:加载顺序时错误:0xC002F210,执行SQL任务:执行查询” EXEC? = [Load_Focus_OrderNum]?,1“失败,出现以下错误:
“值不在预期范围内。”
可能的失败原因:
查询问题,“ ResultSet”属性未正确设置,参数未正确设置或连接未正确建立。
任务失败:加载订单”
这是我的设置:
“加载订单”存储过程一次加载一个包含500个订单的表,然后返回最后一个订单号(我已经确认它正确返回了)。
DECLARE @spOut int
EXEC @spOut = Load_Focus_OrderNum 1, 1
PRINT @spOut
按预期返回638
然后我希望它从下一个订单开始处理下一个500。
我使用以下命令调用存储过程:
EXEC ? = sp_LoadOrders ?, 1
程序段:
ALTER PROCEDURE [dbo].[LoadOrders]
(@PK_ID INT, @OrdType INT)
AS
-- Loads OrderNumTbl table
RETURN (SELECT TOP 1 ID FROM OrderNumTbl ORDER BY ID DESC)
GO
我的参数映射是:
我对循环的表达式是:
我想念什么?任何帮助表示赞赏!
答案 0 :(得分:1)
在参数映射部分,将参数名称值替换为参数索引>>将@OrderID
替换为0
,将@T1_ID
替换为1
参考