SSIS - 通过打开 XML 导出到 excel
SSIS - export to excel through open XML
之前我们在SSIS包中使用了Microsoft OLEDB JetProvider。在 Microsoft 最近更新后,现在我们面临 SSIS 包的问题。所以我们决定使用 open XML 将数据导出到 excel。最好的实施方法应该是什么,因为我们仍在使用 (xls) 版本 1997-2003。
注意:我们已经尝试过 Microsoft Access Database engine 2010 Redistributable。
从我的角度来看,您有以下选项(不幸的是,都是关于 ScriptTask 的):
- 调用 REST API 并在那里创建一个文档(使用 Open XML SDK)。易于开发、支持和部署
- 直接在ScriptTask中使用Open XML SDK
我建议采用第一种方法,但这完全取决于您的系统
更新:
按照第一个选项,您必须开发一个小型 Web API 服务。这是 link 以及 C#
上的示例
根据第二个选项,为了使用外部 DDL,例如 OpenXML,您必须在 GAC 中注册它(如果安装程序没有)。这是 link 中使用外部库的示例。
如果您要遵循此选项,我建议您开发一个 DDL,该 DDL 可以直接与 Open XML 一起使用,并且具有用于从 SSIS 脚本任务调用它的简单 API。您将在 GAC 中注册您的 DDL,并在脚本任务中有一个 link。它将帮助您避免一些调试问题。
之前我们在SSIS包中使用了Microsoft OLEDB JetProvider。在 Microsoft 最近更新后,现在我们面临 SSIS 包的问题。所以我们决定使用 open XML 将数据导出到 excel。最好的实施方法应该是什么,因为我们仍在使用 (xls) 版本 1997-2003。
注意:我们已经尝试过 Microsoft Access Database engine 2010 Redistributable。
从我的角度来看,您有以下选项(不幸的是,都是关于 ScriptTask 的):
- 调用 REST API 并在那里创建一个文档(使用 Open XML SDK)。易于开发、支持和部署
- 直接在ScriptTask中使用Open XML SDK
我建议采用第一种方法,但这完全取决于您的系统
更新: 按照第一个选项,您必须开发一个小型 Web API 服务。这是 link 以及 C#
上的示例根据第二个选项,为了使用外部 DDL,例如 OpenXML,您必须在 GAC 中注册它(如果安装程序没有)。这是 link 中使用外部库的示例。 如果您要遵循此选项,我建议您开发一个 DDL,该 DDL 可以直接与 Open XML 一起使用,并且具有用于从 SSIS 脚本任务调用它的简单 API。您将在 GAC 中注册您的 DDL,并在脚本任务中有一个 link。它将帮助您避免一些调试问题。