在未与 SAP 连接的系统中,我收到了 XML 格式的 IDoc(如果有任何重要的客户主数据 - DEBMAS07)。
1. 是否可以在不连接 SAP 系统的情况下使用 Java IDoc 类库 (sapidoc3.jar)读取此 XML 文档?
2. 是否可以在不连接 SAP 系统的情况下使用 Java IDoc 类库 (sapidoc3.jar)生成 XML 格式的IDoc?
我还没有找到任何明确的例子来说明如何做到这一点,如何在这个类中工作,我发现的例子是使用需要连接到 SAP 的类。
如果没有相应的 IDoc 元数据,您将无法将 XML 数据解释为 SAP IDoc。如果没有此 IDoc 元数据,IDoc-XML 文档只是一些层次结构的字符串串。
SAP Java IDoc 类库获取 IDoc 元数据的唯一方法是从某个 SAP 系统查询它——至少这对 JIDocLib 的当前版本 3.0.12 有效。因此,不幸的是,您的两个问题的答案都是:否。
当然,您可以像任何其他任意 XML 文档一样使用标准 XML 解析器来解析 IDoc-XML。
也许您想看看 SAP Business Connector:它可以从 IDoc-XML 创建 IDocDocument 对象,而无需连接到 SAP 系统。然后,您可以在 Java 中使用这些 IDoc 对象。元数据信息(IDoc 中每个段的字段偏移量和长度)仅在您实际想要将 IDoc 发送到 SAP 系统的地方才需要。但显然您不需要这样做,没有元数据信息应该没问题。
SAP BC 主页: https: //support.sap.com/sbc