在Visual Studio 2017社区的SSDT中使用SSIS包作为模板

问题描述 投票:3回答:2

。各位大家好!我遇到了一个小问题。

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

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

Setting up SSIS Item Template in SQL Server Data Tools for Visual Studio 2012

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

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

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

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

The VS Folder struture image

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

我把我的包装放在我在文章中找到的地方并且没有工作。

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

我真的迷路了,我尝试了所有我读过的东西,以及我院子里的一些“有创意的东西”但没有结果。

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

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

ssis visual-studio-2017 sql-server-data-tools visual-studio-community
2个回答
3
投票

根据我读过的文章和@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

所以现在我跑了!谢谢你的帮助!!


2
投票

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

  1. 关闭Visual Studio的所有实例
  2. 将模板包复制到Common7\IDE\PrivateAssemblies\ProjectItems\DataTransformationProject\DataTransformationItems
  3. 打开您的SSIS项目
  4. Add New Item右键单击项目并选择Add,New Item,你应该列出你的模板包(TemplatePackage2)

enter image description here

作为参考,下面是我的文件夹结构的样子。由于我不记得包模板是否存在于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,你将有一段时间来辨别运行10小时的Data Flow Task是否与通常需要10秒的相同或者是第二个(不同的)包执行。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.