【发布时间】:2012-04-20 07:45:28
【问题描述】:
我想知道从 SSIS 创建 EDI 输出的选项有哪些。
我已经看到 CozyRoc 的“EDI 源任务”,但我想从关系表中导出 EDI 文件?这是否可以通过 SSIS 实现,或者编写 C# 程序或类似程序比处理 SSIS 的细微差别要容易得多?
完全是 EDI 的新手。感谢任何指针。
【问题讨论】:
我想知道从 SSIS 创建 EDI 输出的选项有哪些。
我已经看到 CozyRoc 的“EDI 源任务”,但我想从关系表中导出 EDI 文件?这是否可以通过 SSIS 实现,或者编写 C# 程序或类似程序比处理 SSIS 的细微差别要容易得多?
完全是 EDI 的新手。感谢任何指针。
【问题讨论】:
您无需担心 SSIS 的细微差别。您需要担心 EDI 的细微差别。
您使用的是 ANSI X12 还是 EDIFACT? 您将如何处理封装(控制编号、多个贸易伙伴、拆分交换)?您要创建哪些文档?你将如何处理重复的片段?分隔符?
您是尝试做 856 还是 837?如果是这样,使用 SSIS 只是自虐。
您正在重新发明轮子。查看 Liaison Delta (www.liaison.com)。您可以简单地映射 DB -> EDI,也可以构建复杂的逻辑。它还内置了 EDI 词典。您至少应该下载他们的免费 EDI 记事本工具。告诉他们我派你去的:)
查看 SourceForge (bots.sourceforge.net) 上的 BOTS。看看 EDIDEV。有很多工具可供选择,而且具有成本效益。这些工具/翻译器的存在是有原因的。 SSIS 不是为正确的 EDI 创建/生成有效语法而构建的。可以做到吗?可能。应该是?天哪,没有。
【讨论】:
有可用的商业(和免费)EDI 包。然而,就我的目的而言,我看到的每一个都有一个严重的缺陷。他们只处理语法——最简单的部分。对于困难的部分——语义和业务逻辑——它们要求用户以 XML(或专有脚本)提供对需求的详细描述。编写 XML 比用 VB、C# 或任何其他过程语言编写整个解决方案更困难。甚至是 SQL。
如果我可以在 VB、C# 或 SQL 中完成,我可以轻松地将代码放入 SSIS 脚本组件或 SQL 组件中。
【讨论】:
为了生成 EDI 文档,您应该使用某种类型的 EDI 软件。有许多类型的 EDI 翻译器、EDI 软件包和其他类型的 EDI 服务正是为此而设计的。
不要重新发明轮子。谷歌搜索 EDI 软件或 EDI 服务,您将有很多选择。试试看 Amosoft EDI Services (www.amosoft.com) 这就是他们的工作。
【讨论】: