跳转到主要内容
SAP IDoc 端口支持向各种 SAP 系统发送 IDoc 文件并从中接收 IDoc 文件。它是一个数据容器,用于在 SAP 与能够理解数据语法和语义的其他进程之间交换信息。

概览

IDoc 端口可以使用以下方法连接到 SAP: Windows
  • NetWeaver RFC SDK
  • Classic RFC SDK
  • 支持 Unicode 的 Classic RFC SDK
  • SOAP(仅发送)
Java
  • Java Connector (JCO)
  • SOAP(仅发送)
IDoc 端口可以发送和检索原始 IDoc 或 IDoc XML 格式的文件。

端口配置

本节包含所有可配置的端口属性。

设置选项卡

主机配置

与建立 SAP 系统连接相关的设置。

客户端身份验证

与针对 SAP 系统进行身份验证相关的设置。

接收设置

与接收 IDoc 文件相关的设置。

控制记录信息选项

本节允许你在将 IDoc 文件发送到 SAP 之前覆盖 IDoc 文件的控制头。当从一个 SAP 系统接收 IDoc 文件并将其发送到另一个 SAP 系统时,这非常有用:在这种情况下,应在不更改 IDoc 文件数据的情况下更改控制记录。有关详细信息,请参阅向 SAP 发送 IDocs。

高级选项卡

语言设置

与通信语言相关的设置。

网关

与通过网关和 SAP 通信相关的设置。

登录负载均衡

与以组方式登录 SAP 系统以启用负载均衡相关的设置。

安全网络通信 (SNC)

与使用外部安全产品增强 SAP 连接安全性相关的设置。

高级设置

不包含在上述类别中的设置。

消息

消息设置确定端口如何搜索消息并在处理后管理它们。

设置描述
保存到已发送文件夹选中此项可将端口处理的文件复制到该端口的“已发送”文件夹中。
已发送文件夹方案端口根据选定的时间间隔对 已发送 文件夹中的文件进行分组。例如,Weekly 选项指示端口每周创建一个新的子文件夹,并将本周发送的所有文件存储在该文件夹中。空白设置告诉端口将所有文件直接保存在 已发送 文件夹中。对于处理许多事务的端口,使用子文件夹可以帮助保持文件有序并提高性能。

日志

用于管理日志创建和存储的设置。

设置描述
日志级别指定要记录在端口日志目录中的信息类型:
  • None - 不创建任何日志。
  • Error - 仅当端口遇到错误时才创建日志。
  • Warning - 仅当端口发出警告时才创建日志。
  • Info - 记录工作流的一般信息,包括任何错误和警告(如果适用)。
  • Debug - 记录成功和失败工作流的详细调试信息。
  • Trace - 记录成功和失败工作流的详细跟踪信息。
请注意:Debug 和 Trace 级别的日志可能会记录敏感信息,包括消息内容和 SSL 证书。尽管连接属性(例如密码)被屏蔽了,但在与您的组织外部共享它们之前,请查看此级别的日志以避免泄漏敏感信息。
日志文件夹结构指示端口根据选定的时间间隔将日志文件夹中的文件分组。例如,Weekly 选项指示端口每周创建一个新的子文件夹,并将该周的所有日志存储在该文件夹中。空白设置告诉端口将所有日志直接保存在日志文件夹中。对于处理许多事务的端口,使用子文件夹有助于保持日志的有序性并提高性能。
保留消息副本指示端口在日志目录中保存最新消息副本的切换。请注意,端口每个子文件夹只保留一个消息,并且端口在再次运行时会覆盖以前保存的消息。

其他设置

特殊设置适用于特定用例。

设置描述
其他设置允许在以分号分隔的列表中配置隐藏的端口设置,例如 setting1=value1;setting2=value2。正常的端口用例和功能不需要使用这些设置。

自动化选项卡

自动化设置

与端口自动处理文件相关的设置。

性能

与端口资源分配相关的设置。

设置描述
最大工作线程数此端口上处理文件时从线程池中消耗的最大工作线程数。如果设置,则会覆盖 高级设置 页面的 性能设置 部分的默认设置。
最大文件数分配给端口的每个线程发送的最大文件数。如果设置,则会覆盖 高级设置 页面的 性能设置 部分的默认设置。

警报选项卡

SLA 选项卡

建立连接

使用 NetWeaver RFC SDK

必须将 NetWeaver RFC SDK 中的以下库放入 知行之桥 的 www\bin\x64 文件夹(32 位操作系统上为 www\bin\x86):
  • sapnwrfc.dll
  • icudt30.dll
  • icuin30.dll
  • icuuc30.dll
  • libicudecnumber.dll
  • libsapucum.dll
  • 根据安装的 SAP RFC SDK 版本,.dll 名称可能不同。上面的示例适用于 3.0 版本。
  • 需要将 sapgw00 服务添加到列出的服务中,NetWeaver SDK 连接才能在客户端机器上工作。可以将其添加到 C:\Windows\System32\drivers\etc\services 中的 services 文件。

使用 Classic RFC SDK

非 Unicode 库除 librfc32.dll 外不需要其他内容。将 librfc32.dll 放入 知行之桥 的 www\bin\x64 文件夹(32 位操作系统上为 www\bin\x86)。
这些库同时提供 x86 和 x64 版本,因此必须使用与进程相同的平台。如果应用程序在 64 位 Windows 上运行,则该进程为 64 位。

使用支持 Unicode 的 Classic RFC SDK

必须将 SAP RFC SDK 中的以下库放入 知行之桥 的 www\bin\x64 文件夹(32 位操作系统上为 www\bin\x86):
  • librfc32u.dll
  • icudt30.dll
  • icuin30.dll
  • icuuc30.dll
  • 根据安装的 SAP RFC SDK 版本,.dll 名称可能不同。上面的示例适用于 3.0 版本。
  • 这些库同时提供 x86 和 x64 版本,因此必须使用与进程相同的平台。如果应用程序在 64 位 Windows 上运行,则该进程为 64 位。

使用 Java Connector

要使用 Java 端口,请将 sapjco3.jar 添加到 Java servlet 容器的 lib 文件夹中。

使用 SOAP

SOAP 只能用于向 SAP 发送 IDoc。必须使用其他连接类型才能从 SAP 接收 IDoc。
这需要在 SAP 系统上启用 SOAP 连接。

服务配置

除了上述依赖项外,还必须将以下服务添加到 %WINDIR%\system32\drivers\etc\services;如果系统运行 Linux 或 Mac OS X,则添加到 /etc/services。如果机器上已安装 SAP NetWeaver,则无需进一步操作。

登录 SAP

连接 SAP 系统需要以下设置。

网关

通过网关连接到 SAP 时,请使用高级选项卡 的网关部分中的选项。

负载均衡

要通过负载均衡登录,请在高级选项卡 的登录负载均衡部分中设置属性。

安全网络通信 (SNC)

要启用安全网络通信,请在高级选项卡 的安全网络通信 (SNC)部分选中启用 SNC 框。将 SNC 库设置为用于连接 SAP 的 SNC 库 .dll。

向 SAP 发送 IDocs

配置 IDoc 端口以连接到 SAP 系统后,即可开始向 SAP 发送 IDoc 文件。IDoc 端口可以发送原始 IDoc 或 XML IDoc 格式的文件。 可以将端口配置为自动将控制记录信息插入到发送给 SAP 的 IDoc 中,例如 DOCREL、SNDPOR、SNDPRT 等。这使传出 IDoc 更容易由已配置的系统处理。在设置选项卡 的控制记录信息选项部分配置这些设置。 向 SAP 系统发送 IDoc 之前,请确保已在 SAP 中正确配置合作伙伴配置文件。如果 SAP 中没有合作伙伴配置文件与正在发送的 IDoc 中的控制记录信息匹配,SAP 系统将不会处理这些数据。有关设置合作伙伴配置文件的更多信息,请参阅测试向 SAP 发送 IDoc。
可以使用事务代码 WE60 搜索不同 IDoc 类型的段文档。

测试向 SAP 发送 IDoc

要测试向 SAP 发送 IDoc,首先需要将 SAP 系统配置为具有 知行之桥 的合作伙伴配置文件。以下步骤介绍如何使用 ORDERS IDoc 完成此操作。
  1. 创建合作伙伴: 转到事务代码 WE20 并定义合作伙伴配置文件。将客户的合作伙伴类型设置为 KU,并将合作伙伴编号设置为有效的客户编号。 创建合作伙伴
  2. 为 ORDERS 文档添加入站参数: 此文档的消息类型为 ORDERS。在入站选项选项卡上,将处理代码设置为 ORDE,以告知 SAP 系统在收到采购订单 ORDERS 文档时如何创建销售订单。 设置参数
  3. 将客户分配到销售部门: 步骤 1 中配置的客户必须分配给销售组织、分销渠道和部门。转到事务 VOE2,在 EDSDC 表中配置这些设置。

从 SAP 接收 IDocs

配置 IDoc 端口以连接到 SAP 系统后,即可开始从 SAP 接收 IDoc 文件。IDoc 端口可以接收原始 IDoc 或 XML IDoc 格式的文件。 要从 SAP 接收文件,请为 知行之桥 创建一个 RFC 目标。然后,可以在设置选项卡 的接收设置部分勾选启用 IDoc 接收器,并输入你在 SAP 系统中为 知行之桥 注册的程序 ID。

测试从 SAP 接收 IDoc

此示例介绍如何配置 SAP 系统,以便向 知行之桥 发送 MATMAS IDoc。
  1. 定义逻辑系统: 首先,进入事务 SALE。然后导航到 基本设置 > 逻辑系统 > 定义逻辑系统。创建一个具有有效名称(例如 知行之桥)和描述的新条目。
  2. 创建 RFC 目标: 打开事务代码 SM59。单击创建按钮,并填写下述 RFC 目标字段。 保存设置后,测试连接以确保可以成功连接到 知行之桥。
  3. 创建处理端口: 转到事务代码 WE21。创建一个新的事务性 RFC 端口,使用唯一名称以及你在步骤 2 中创建的同一目标。
  4. 创建合作伙伴配置文件: 打开事务 WE20。为步骤 1 中添加的逻辑系统创建一个合作伙伴配置文件。接下来,为 MATMAS 文档添加一个出站参数。将消息类型设置为 MATMAS。在出站选项选项卡上,将接收方端口设置为步骤 3 中配置的端口值,将输出模式设置为 Transfer IDoc Immed,并将 IDoc 基本类型设置为 MATMAS05。
  5. 发送测试 IDoc: 使用事务 BD10 向 知行之桥 发送指定物料编号的测试 IDoc。发送消息之前,需要配置消息类型和逻辑系统。使用事务 BD87 监控传出消息,并在必要时再次处理它们。

宏

示例