将脚本组件添加到VS2015生成的包不能在SQL Server 2016上运行

时间:2017-09-01 09:12:39

标签: visual-studio-2015 ssis sql-server-2016 script-component

我们正在使用包含脚本组件的BIML生成的包从SQL 2012升级。我们收到的错误是我能够在没有BIML的新项目中重现。

错误是:

验证失败并返回错误代码0xC0048021。

组件丢失,未注册,无法升级或缺少必需的接口。此组件的联系信息是“包含并运行自定义脚本代码。例如,应用限制”收入“列中有效值范围的业务规则,或者在两列中添加值并计算总和的平均值。 Microsoft Corporation; Microsoft SQL Server; Microsoft Corporation;保留所有权利; http://www.microsoft.com/sql/support;9“。

“Parse PatientContacts,clsid {4F885D04-B578-47B7-94A0-DE9C7DA25EE2}”的组件元数据无法升级到该组件的较新版本。 PerformUpgrade方法失败。

Microsoft.SqlServer.Dts.Pipeline.ComponentVersionMismatchException:Parse PatientContacts的版本与此版本的DataFlow不兼容。 [[指定组件的版本或管道版本或两者都高于当前版本。此软件包可能是在新版DTS或组件上创建的,而不是安装在当前PC上。]]    在Microsoft.SqlServer.Dts.Pipeline.ManagedComponentHost.HostCheckAndPerformUpgrade(IDTSManagedComponentWrapper100 wrapper,Int32 lPipelineVersion)

为了确保它不是BIML或VS2012,我可以使用VS2015重现此错误:

  • 在Visual Studio 2015中创建了一个新项目
  • 将TargetServerVersion配置为SQL Server 2016
  • 使用我的数据源和-Destination之间的脚本组件创建数据流
  • 保存并构建了项目。从bin文件夹中选取.ispac文件
  • 使用SSMS 17在我的SQL Server 2016实例上部署项目
  • 执行将环境配置为正确值的包。

非常感谢任何帮助。

0 个答案:

没有答案