SAP 调用 RFC 活动

使用 SAP 调用 RFC 活动,以在运行时期间调用在指定 SAP 端点上远程启用的远程函数调用 (RFC)。

注: 要从 Studio 连接至 SAP 系统,必须下载 SAP Jar 文件和 DLL,并将其安装在 Windows 开发机器上。有关更多信息,请参阅下载和安装 SAP Jar 文件和 DLL

将 SAP 调用 RFC 活动添加到编排

  1. 创建或打开编排。这样会以图形形式显示编排。
  2. 选择活动选项卡并展开 SAP 文件夹。
  3. SAP 调用 RFC 活动拖动至编排上。
  4. 选择该活动。这样会显示核对表

创建、选择或编辑 SAP 端点

  1. 单击核对表中的选取端点任务,然后选择下列操作之一:
    • 选择现有端点:
      1. 选择浏览。这样会显示 Project Explorer
      2. 选择现有端点并单击确定。 转至配置活动过程。
    • 选择现有端点并编辑该端点:
      1. 选择浏览。这样会显示 Project Explorer
      2. 选择现有端点并单击确定
      3. 单击编辑。这样会显示编辑端点面板。
    • 创建新端点:选择新建。这样会显示创建端点面板。
  2. 创建或编辑 SAP 端点

配置活动

  1. 核对表中选择配置任务。 这样会显示配置面板。
  2. RFC 名称字段中,单击浏览......RFC 列表对话框即会显示。
  3. RFC 搜索函数字段中输入字符与 * 通配符,以查找期望的 RFC 名称,如以下示例所示:
    • AB* — 查找所有名称以 AB 前缀开头的 RFC。
    • AB*TRANSACTION — 查找所有名称以 AB 前缀开头,并以字符串 TRANSACTION 结尾的 RFC。

      查询 SAP 系统,且在匹配 SAP 函数表中列出了与通配符表达式相符的 RFC 名称。

  4. 匹配 SAP 函数表中,选择一个 SAP 函数并单击确定

指定重试选项

  1. 核对表中选择重试任务。 这样会显示重试面板。
  2. 配置重试选项以连接 SAP 系统。下表描述了用于连接 SAP 系统的重试选项:
    重试选项 描述
    1) 在两次重试之间等待 ___ 秒。 指定 Integration Appliance 在尝试建立与 SAP 系统的连接之前等待的秒数。
    2) 在尝试连接 ___ 次后失败。 指定 Integration Appliance 在发出错误并停止处理当前编排作业之前尝试与 SAP 系统建立连接的最大次数。 如果部署包含 SAP 调用 RFC 活动在内的编排,且 Integration Appliance 无法与指定的 SAP 系统建立连接,那么 Integration Appliance 会在系统和编排日志中将连接错误记录为“警告”,直至达到重试次数值。当达到重试计数时,Integration Appliance 会在系统和编排日志中记录错误,并且停止处理当前编排作业。例如,您将重试计数设置为 3。第一个、第二个和第三个连接错误在系统日志中显示为“警告”。Integration Appliance 将第四个连接错误记录为错误,并且停止处理当前编排作业。

映射活动的输入

  1. 核对表中选择映射输入任务。 从 RFC 的输入参数生成的 XML 模式显示为至活动面板中请求输入参数下的节点。此外,如果 RFC 包含表,代表 RFC 表的 XML 模式将显示为至活动面板中请求输入参数下的节点。
  2. 在编排变量与 RFC 输入参数和表之间创建映射。请参阅创建映射,以获取与映射有关的常规指示信息。

    在运行时必须为 RFC 输入参数或表的所有必选元素提供相应值。 可以通过为元素指定缺省值或通过将该元素与输入节点链接起来以提供值。运行时期间,如果未提供必选元素的值,那么活动会在运行时期间抛出由 Web 管理控制台 (WMC) 报告的异常。如果在运行时期间没有为 RFC 输入参数或表的可选元素提供值,在运行时期间不会抛出异常。

事务选项:

  1. 在活动的映射输入中,右键单击至活动部分并选择显示可选参数。映射输入中将显示变量 transactionOptions。仅通过 Cast Iron Studio V6.1.0.12 提供该属性。
  2. 选择以下某个值:
    注: 如果没有为 transactionOptions 属性设置任何值,那么将使用 COMMIT_HANDLED_BY_RFC 值。
    表 1.
    描述
    COMMIT_HANDLED_BY_RFC RFC 自行负责 RFC 的落实。 连接器不会执行任何显式落实调用。
    COMMIT_TRANSACTION_AFTER_COMPLETION 在运行时期间,SAP 连接器调用 RFC 并等待来自 SAP 系统的返回消息。SAP 系统所返回消息的返回码确定 SAP 连接器是否发送另一调用,请求 SAP 系统落实或回滚事务:
    • 如果从 RFC 传来的返回码指示成功,SAP 连接器将发出另一调用,请求 SAP 系统落实事务,并立即开始处理编排中的下一个活动。
    • 如果从 RFC 传来的返回码指示失败,SAP 连接器将向 SAP 系统发出一个回滚请求,并立即开始处理编排中的下一个活动。
    COMMIT_TRANSACTION_AND_WAIT_UPON_COMPLETION 在运行时期间,SAP 连接器调用 RFC 并等待来自 SAP 系统的返回消息。SAP 系统所返回消息的返回码确定 SAP 连接器是否发送另一消息,请求 SAP 系统落实或回滚事务:
    • 如果从 RFC 传回的返回码指示成功,SAP 连接器将发出另一调用,请求 SAP 系统落实事务。编排将一直等到 SAP 系统发送第二条消息,表明事务已落实,然后才处理编排中的下一个活动。
    • 如果从 RFC 传回的返回码指示失败,SAP 连接器将向 SAP 系统发出一个回滚请求。编排将一直等到 SAP 系统发送第二条消息,表明已发生事务回滚,然后才处理编排中的下一个活动。
  3. 选择事务操作后,请填充 RFC 的输入数据。
SAP 连接器还支持从端点动态连接到其他 SAP 系统。在运行时期间,如果希望实现以下目的,请在映射输入的 sapConnectionProperties 中添加可选参数:希望动态连接到端点面板中配置的 SAP 系统之外的 SAP 系统;希望使用不同于端点面板中使用的用户名和密码连接到同一 SAP 系统;希望 SSO 令牌不同于端点面板中添加的 SSO 令牌。下表中描述了 sapConnectionProperties 的参数:
表 2. 连接属性
可选参数 描述
sapConnectionProperties 参数
hostName 指定包含 SAP 系统的 IP 地址或机器名称。
systemNumber 指定标识 Studio 应连接的特定 SAP 系统实例的编号。您的 SAP 管理员必须提供该信息。
client 指定将 Studio 和 Integration Appliance 标识为 SAP 系统的客户端的编号。您的 SAP 管理员必须提供该信息。
language 指定 SAP 的消息语言选项。 例如,EN 是表示英语的 ISO 代码。
basicAuthentication 参数
username 指定要在连接 SAP 系统时使用的用户名。
password 指定与连接 SAP 系统时的用户名对应的密码。
ssoAuthentication 参数
ssotoken 指定单点登录 (SSO) 令牌。
sncAuthentication 参数
sncmode 指定是否启用安全网络连接 (SNC) 方式。
sncname 指定 SNC 连接的专有名称。
partner 指定 SNC 合作伙伴的专有名称。
qop 指定 SNC 的安全级别。
X509 证书 指定要用作登录凭单的 X509 证书。只有在将基于用户名/密码的认证与 SNC 一起使用时,该字段才为可选字段。
connectionPool 参数
maximumConnections 指定 Integration Appliance 根据消息负荷打开的额外 SAP 连接数,最多为该指定的数量。
maxIdleTime 指定 SAP 连接在 Integration Appliance 将其关闭之前可以处于打开和空闲状态的分钟数。

映射活动输出

  1. 选择“核对表”中的映射输出任务。 从 RFC 的返回类型生成的 XML 模式显示为自活动面板中请求输出参数下的节点。此外,如果 RFC 包含表,代表此类表的 XML 模式将显示为自活动请求节点下的节点。
  2. 在 RFC 输出参数和表与编排变量间创建映射。请参阅创建映射,以获取与映射有关的常规指示信息。

有关部署 SAP 编排的注意事项

Integration Appliance 必须首先能够与 SAP 系统建立连接,然后您才可以使用 WMC 部署带有 SAP 活动的编排。如果 Integration Appliance 未能与 SAP 系统建立连接,则无法部署编排。