3

我们目前正计划与运行 SAP 的合作伙伴进行沟通。问题是我们的 ERP 无法与 SAP 通信,我们需要自己从 IDOC 文件中提取必要的信息。

在 .NET 中是否有一种简单的方法可以做到这一点?就像一个图书馆(免费/商业),所有的咕噜声都可以工作?

我只是在寻找类似“IDocLibrary.Parse(file)”的东西,它会返回一个对象集合,这些对象直接转换为 IDOC 文件中的订单等。

我确实读过某种 SAP .NET 连接器。这有能力做我想做的事吗?

编辑:

SAP .NET 连接器似乎是没有选择的。根据http://www.dataxstream.com/2009/07/introduction-to-the-sap-net-connector/

特别是,SAP .Net 连接器没有内置用于解析来自 IDOC 的各种数据字段的功能。IDOC 的格式是什么以及如何从 IDOC 中提取数据取决于接收程序。

4

5 回答 5

3

我建议尝试 SAP 网站SAP .NET 连接器

SAP .NET 连接器是一个支持 Microsoft 之间通信的开发环境。NET 平台和 SAP 系统。此连接器支持 RFC 和 Web 服务,并允许您在 Microsoft Visual Studio.Net 中编写不同的应用程序,例如 Web 窗体、Windows 窗体或控制台应用程序。通过 SAP .NET 连接器,您可以使用所有常见的编程语言,例如 Visual Basic。NET、C# 或托管 C++。

功能 使用 SAP .NET 连接器和 SAP .NET 代理向导,您可以:

· 编写可以访问 SAP 业务对象 (BAPI) 的 .NET Windows 和 Web 表单应用程序。

· 为 SAP 服务器开发客户端应用程序。在这里,您可以使用 RFC 或 HTTP/SOAP/XML(由外而内)。

· 编写在 .NET 环境中运行并且可以从 SAP 系统开始安装的 RFC 服务器应用程序(由内而外)。

IDoc 接收器作为 Windows 服务

于 2009-12-02T08:39:45.430 回答
2

SAP 有一个处理 IDoc 的 C++ 库,但它已经很老了: 这是一个描述它的 PDF。不确定您是否仍然可以获得该软件,以及今天是否会对您有所帮助。

大多数较新的库似乎都是为 Java 开发的(可以在此处找到一个示例)。我想如果您正在寻找 .Net 解决方案,这对您没有多大帮助。

但是,正如我在对您的问题的评论中所建议的那样,您可能能够获得 XI(交换集成)/PI(流程集成)基础设施(基于 ​​Java)以 XML 格式发送 IDoc。这应该比“纯文本”更容易处理......

于 2009-12-04T13:34:20.133 回答
0

有一种方法可以从 SAP 系统中转储 IDoc 类型定义(类似于 DTD)。然后将其用作发送给您的内容的元描述。AFAIK 有不同的方式来输出定义、HTML、C-Header,甚至可能是“真正的”DTD。

很长一段时间没有使用这个了,但是看看 IDocs 类型是在哪里定义的(在 wedi 菜单的某个地方,可能是 we30)。

IDoc 本身几乎是具有固定字段长度的纯文本,因此您必须知道字段/结构之间的“边界”在哪里。使用 IDoc 定义,这应该不会太难。

于 2009-12-04T10:40:58.200 回答
0

我为 DataXstream 公司工作,该公司提供了一个连接器(您在初始消息中引用它们)来完成您想要的操作。通常,我们的连接器用于将第 3 方应用程序集成到 SAP 中。我不确定您是否可以假设 iDOC 将包含您一直想要的信息,因为大多数 SAP 实施都是非常定制和独特的。无论如何,我们很乐意帮助您按原样利用连接器,或者您正在寻找的部分来执行您寻求的集成。让我知道。

吉姆

于 2009-12-11T14:04:15.087 回答
0

对于所有在这里偶然发现这个老问题的人:

使用 SAP 免费提供的 IDoc 和 IDoc-XML 最舒适的方法是使用 SAP Java 连接器的 SAP Java IDoc 类库插件。它可以从 SAP Java 连接器主页下载,网址为https://support.sap.com/jco

不幸的是,SAP Connector for Microsoft .NET 环境缺少这样的 IDoc 类库插件——据我所知,至少 SAP 目前没有提供此类插件。

或者,也可以查看并考虑使用SAP Business Connector,它还提供了适当的 API 来处理 IDocs 和 IDoc-XML。当然,这是一个集成平台产品,用于在各个系统之间交换业务数据,没有开发库可以包含在自己的Java应用程序中。但它也免费提供给所有拥有 NetWeaver 许可证的 SAP 客户。

SAP 提供的所有解决方案的先决条件是您是 SAP 客户或合作伙伴并拥有 ABAP 系统的许可证。

于 2018-12-29T12:03:51.263 回答