我在 ssis里的数据源 采用了“sql命令”模式,如下
execute dbo.WCall_OnlUserDayLog_Get ?
WITH RESULT SETS
(
(
[DateNum] [int] NOT NULL,
[UserID] [int] NOT NULL
)
)
也在“sql命令”模式下的“参数”选项下 指定了参数映射:
@datenum User::m_datenum input
并且在包的配置文件里 给 User::m_datenum赋了值了
但执行失败,显示:《sql命令需要名为“@datenum”的参数,但在此参数映射中找不到该参数》
难道我在“sql命令”模式下的“参数”选项下指定参数映射不对吗???怎样才能映射上呢???
配置文件是这样的
<?xml version="1.0"?><DTSConfiguration><DTSConfigurationHeading><DTSConfigurationFileInfo GeneratedBy="TKOFFICE\aorgl" GeneratedFromPackageName="Package" GeneratedFromPackageID="{AA4EE366-D1DD-462B-A6FE-8DB45FFFBF61}" GeneratedDate="2015/1/10 15:39:47"/></DTSConfigurationHeading>
<Configuration ConfiguredType="Property" Path="\Package.Variables[User::m_datenum].Properties[Value]" ValueType="Int32"><ConfiguredValue>20141212</ConfiguredValue></Configuration>
<Configuration ConfiguredType="Property" Path="\Package\daylog->increment.Properties[[online-increment].[BulkInsertFirstRow]]" ValueType="Int32"><ConfiguredValue>-1</ConfiguredValue></Configuration><Configuration ConfiguredType="Property" Path="\Package\daylog->increment.Properties[[online-increment].[BulkInsertLastRow]]" ValueType="Int32"><ConfiguredValue>-1</ConfiguredValue></Configuration><Configuration ConfiguredType="Property" Path="\Package\daylog->increment.Properties[[online-increment].[BulkInsertOrder]]" ValueType="String"><ConfiguredValue></ConfiguredValue></Configuration><Configuration ConfiguredType="Property" Path="\Package\daylog->increment.Properties[[online-increment].[BulkInsertTableName]]" ValueType="String"><ConfiguredValue>[online].[IpUserDaySum_Increment]</ConfiguredValue></Configuration><Configuration ConfiguredType="Property" Path="\Package\daylog->increment.Properties[[online-increment].[Timeout]]" ValueType="Int32"><ConfiguredValue>30</ConfiguredValue></Configuration></DTSConfiguration>
参数作用域不正确. 搞得这么麻烦, 干嘛不使用脚本任务? 自己写vb或c#的代码进行控制?
我看了一下datatools里,User::m_datenum的作用域是Package,灰色的不让更改,
如何改成正确的作用域呢?
@bokeyuanwaxx: Package说明是正确的吧, 当前Package。 你有没有传进去?
@问天何必: 我是在配置文件里给m_datenum赋值了,你是不是让我在配置文件里加个Package之类的变量并赋值??
看看是不是参数的作用域不对
我看了一下datatools里,User::m_datenum的作用域是Package,灰色的不让更改,
如何改成正确的作用域呢?