首页 > 解决方案 > 导出 .dtsx 文件并添加到 Visual Studio 中的新项目

问题描述

我有一个位于 MSMS 中的 .dtsx 文件。我想将其导出,然后在 Visual Studio 中添加为新包。一旦我导出了 AgencySales,它就会变成一个 .ispac 文件,然后无法打开或添加到我的解决方案中。

在此处输入图像描述

我不太记得如何做到这一点 - 我相信我们可能必须在 MSMS 中下载整个项目,但记不清了。

我对 SSIS 很陌生,所以请不要讨厌。干杯

在此处输入图像描述

在此处输入图像描述

标签: sql-serverssisvisual-studio-2008

解决方案


我猜你会在这个项目上度过一段“糟糕的时光”。在 2016 版本之前,向后兼容性与SSIS项目无关。即使是现在,由于自定义组件、版本依赖等原因,它仍然会受到影响。

2012-2019 年包裹的差异是递增的,而 2008 年和 2012 年之间的跳跃可能是海洋的宽度。2012 年引入了项目部署模型,您的屏幕截图表明您的源使用该开发和部署模型。这是一个天赐之物,因为我们可以将项目参数、连接管理器、参数等打包到一个名为 .ispac 的可部署量子中。这些概念在 2008 版本中不存在,因此向后退通常是不可行的,因为您可能在新版本中有概念旧版本中不存在的(以及诸如表达式任务之类的任务,或者只是无法很好移动的脚本任务/组件的二进制文件)

既然我已经列出了您将遇到的所有痛点,让我们来谈谈从 SSISDB 中获取该软件包。这是一个多跳问题。听起来您没有AgencySales创建它的原始项目。没问题 - 打开安装了 SQL Server Data Tools 的 Visual Studio 的当前版本并添加新项目,然后在 Integration Services 特定部分(不是默认的商业智能部分)下,选择 Integration Services Import Project Wizard。这将从 SSISDB 中拉出整个项目,并将其变成一个完整的 SSIS 项目。

选择集成服务目录并填写服务器和文件夹/项目路径AgencySales单击所有内容后,您就有了项目的完整版本。

现在是困难的部分 - 反向移植工作。如果它是一个微不足道的包 - 控制流中的一个数据流任务并且是 Source to Sink 类型的数据处理,那么最好为 2008 年重写。

如果它比这更复杂,那么您将需要更多的工作,也许最好继续寻找以前的开发人员采取的所有角落和缝隙。我不会使用这种方法,而是使用Biml Biml 是一种描述商业智能对象的元语言——在这种情况下,是一个 SSIS 包。将免费的插件BimlExpress安装到现有的 Visual Studio 实例。现在您可以右键单击包并选择“将 SSIS 包转换为 Biml”。完成后,BimlScript.biml 文件将位于 Miscellaneous 文件夹中。

Biml 是 Biml 是 Biml。它按原样描述 SSIS 元素 -> 这是一个“执行 SQL 任务”。它在 SSIS 包中的物理实现方式非常依赖于版本,因此 Biml 引擎负责将其转换ExecuteSQL为特定于版本的包 XML。我一直在使用 7 的非常酷的概念?现在几年。

现在,您有点不知所措,因为我不记得 Visual Studio 2010 是 2012 软件包的桥接解决方案,还是只是 2008 年的修饰界面。如果它针对 2008 年,那么请使用 BimlExpress 版本指定“为 Visual Studio 2010 下载”安装它,然后在“集成服务项目 2”中,您应该在项目级别有一个可用的右键菜单,显示“添加新的 Biml 文件”。去做。在打开的空 BimlScript.biml 中,将 VS2012+ 版本的 BimlScript.biml 中的内容复制到空文件中。节省。右键单击 BimlScript.biml 并选择生成 SSIS 包。

付费产品BimlStudio在您将项目导入其中并简单地更改选择器以发出 2008/R2 特定包时,极大地简化了这个繁琐的工作。


推荐阅读