4

. 大家好!,我遇到了一个小问题。

我有 VS 2017 社区版,我已经安装了 SSDT(SQL Server 数据工具)我已经构建了一个 SSIS 包(一个通用包),现在我想将它用作未来包的模板。

所以,我在网上挖掘,也在 StackOverflow 中找到了例如这篇文章:

在 SQL Server Data Tools for Visual Studio 2012 中设置 SSIS 项模板

我在 MS 中发现了很多其他文章,例如:

https://docs.microsoft.com/en-us/sql/integration-services/create-packages-in-sql-server-data-tools

其他人等等,然后跟进到发球台,但由于某种原因,我无法让它发挥作用。

这是我的 VS 安装的文件夹结构

VS 文件夹结构图像

我已经从树中遗漏了一些不适用于问题的文件夹

我把我的包裹放在我在文章中找到的地方,但没有用。

有时,在文章中提到我没有的文件夹,所以我创建并尝试了但也没有(所以删除了这个文件夹)

我真的迷路了,我尝试了我读到的所有东西,还有我院子里的一些“创造性的东西”,但没有结果。

任何人都经历过这个或对这个问题有一些经验?任何人都可以帮忙吗?

非常感谢。最好的问候和新年快乐!加布里埃尔

4

2 回答 2

4

好吧,根据我读过的文章和@billinkc 的帮助,我终于弄清楚了将包放在哪里,我也遗漏了一些东西,但是当我阅读@billinkc 答案时我意识到了。

当您使用 VS 社区版时,您必须将包放在此路径中:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\SSIS\ProjectItems\DataTransformationProject\DataTransformationItems

你需要让它工作的文件是一个 dtsx 文件(将成为模板的包)和一个主要需要具有这种结构的 vsdir 文件我使用了这个值并且工作正常:

YourPackageName.dtsx| |The name you want to appear|100|The description of the package| |21| |#44

您可以在 MS 文档中查看 vsdir 文件的所有字段:

https://docs.microsoft.com/en-us/visualstudio/extensibility/internals/template-directory-description-dot-vsdir-files

所以现在我让它运行了!谢谢你的帮助!!

于 2018-01-04T03:38:12.927 回答
3

我没有安装 2017,但这似乎适用于 2015,所以如果你不介意成为豚鼠......

  1. 关闭 Visual Studio 的所有实例

  2. 将您的模板包复制到Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems

  3. 打开你的 SSIS 项目

  4. 添加新项目右键单击项目并选择添加,新项目,您应该列出您的模板包(TemplatePackage2)

在此处输入图像描述

作为参考,下面是我的文件夹结构的样子。由于我不记得包模板是位于 DataTransformationProject 还是 DataTransformationProject\DataTransformationItems,因此我将模板包的副本放在两者中,按名称不同以查看在编辑器中拾取的内容

  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems
  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationProjectItems.vsdir
  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\TemplatePackage.dtsx
  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems\DtsProjectItems.vsdir
  • C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems\TemplatePackage2.dtsx

关于模板的一般说明

首先是访问模板的唯一方法是通过上述点击路径。如果想添加一个新包,我的默认点击路径是右键单击 SSIS 包并选择“新建 SSIS 包”

2012 年之前,组件和包的内部 ID 将保持不变。BIDS Helper 具有解决此问题的功能。重要的原因是,如果您尝试跟踪包裹的性能,如果它们都报告相同的 GUID,您将花费大量时间来辨别Data Flow Task运行 10 小时的程序是否与通常需要 10 秒的程序相同,或者执行第二个(不同的)包。

开发人员需要成为他们机器上的本地管理员才能部署模板包,并且您需要一个流程来保持最新状态。那或者你需要让网络管理员将这些复制到开发人员的机器上。

最后,如果我有模板逻辑,我可能会将其抽象为 Biml,然后使用源代码管理来确保人们使用当前版本并避免整个权限问题。

于 2018-01-02T17:55:34.003 回答