我正在尝试使用 .Net 连接器将数据发送到 SAP 系统。我已经能够很容易地向 RFC 功能模块发送调用,但似乎没有任何方法可以直接发送标准 Idoc。这很奇怪,因为 Idocs 应该是与 SAP 对话的标准通信工具。
有没有人发现是否/如何做到这一点?
据我所知,SAP 目前没有为 .NET 连接器 (NCo) 提供用于处理 IDoc 的开发库。如果你想使用 NCo,你必须自己编写这个 IDoc 处理的东西。这是可能的,因为 IDoc 通常也是通过调用特殊的远程功能模块(例如 IDOC_INBOUND_ASYNCHRONOUS)来传输的。但这会变得非常麻烦和困难,特别是如果它还应该与非 unicode ABAP 系统和多字节代码页(如中文、日文或韩文)一起使用。
但是,如果您不需要坚持使用 NCo,我认为使用 IDocs 进行自己开发的最简单方法是切换到 Java 并将 SAP Java 连接器 (JCo) 与 SAP Java IDoc 类库插件结合使用. NCo 和 JCo 有一个非常相似的 API,但不幸的是,.NET 环境缺少这个 Java IDoc 类库插件——至少 SAP 不提供它,而且我也不知道任何其他 .NET 库为此.
NCO 中没有发送 IDOC 的功能,NCO 旨在使用 .NET 开发 RFC 客户端或 RFC 服务器。一个简单的堆栈搜索我发现了以下一些建议,如果这仍然是你想要的方式,这些建议可能会对你有所帮助。
如何使用 SAP .Net 连接器 3 创建 Idocs 并将其发送到 SAP
顺便说一句,我不会说 IDOC 是 SAP 的标准通信工具,它是众多工具之一,它们都同样有效,所以只取决于你的情况。
之后...