SAP 调用 BAPI 活动
使用 SAP 调用 BAPI 活动,以在运行时期间调用在指定 SAP 端点上远程启用的业务对象方法 (BAPI)。
注: 要从 Studio 连接至 SAP 系统,必须下载 SAP Jar 文件和 DLL,并将其安装在 Windows 开发机器上。有关更多信息,请参阅下载和安装 SAP Jar 文件和 DLL。
在编排中添加 SAP 调用 BAPI 活动
- 创建或打开编排。这样会以图形形式显示编排。
- 选择活动选项卡并展开 SAP 文件夹。
- 将 SAP 调用 BAPI活动拖动到编排上。
- 选择该活动。这样会显示核对表。
创建、选择或编辑 SAP 端点
- 从核对表中单击选取端点任务,并选择以下一个操作:
- 选择现有端点:
- 选择浏览。这样会显示 Project Explorer。
- 选择现有端点并单击确定。 转至配置活动过程。
- 选择现有端点并编辑该端点:
- 选择浏览。这样会显示 Project Explorer。
- 选择现有端点并单击确定。
- 单击编辑。这样会显示编辑端点窗格。
- 创建新端点:选择新建。这样会显示创建端点面板。
- 选择现有端点:
- 创建或编辑 SAP 端点。
配置活动
- 从核对表中选择配置任务。 这样会显示配置面板。
- 在对象名字段中,单击浏览...。 BAPI 列表对话框即会显示。
- 搜索业务对象。单击列表中的一个业务对象,并输入该业务对象名称开头的若干个字符。
- 展开该业务对象,以查看关联的 BAPI 方法。
- 选择一个业务对象和方法,并单击确定。
- 选择一下一个事务选项:
- 无操作(事务由 BAPI 直接处理) - 在运行时期间,调用该 BAPI 的 Integration Appliance 不执行任何事务处理。如果某个事务与该 BAPI 关联,该事务必须完全由 BAPI 处理。
- 完成后落实事务 - 在运行时期间,Integration Appliance 调用 BAPI 并等待来自 SAP 系统的返回消息。从 SAP 系统返回的消息的返回码确定 Integration Appliance 是否应发送另一条消息,请求 SAP 系统落实或回滚该事务:
- 如果从 BAPI 传回的返回码表明成功,Integration Appliance 将发送另一条消息,请求 SAP 系统落实该事务,并立即开始处理编排中的下一个活动。
- 如果从 BAPI 传回的返回码表明失败,Integration Appliance 将向 SAP 系统发送一条回滚请求,并立即开始处理编排中的下一个活动。
- 落实事务并等待完成 - 在运行时期间,Integration Appliance 调用 BAPI 并等待来自 SAP 系统的返回消息。从 SAP 系统返回的消息的返回码确定 Integration Appliance 是否应发送另一条消息,请求 SAP 系统落实或回滚该事务:
- 如果从 BAPI 传回的返回码表明成功,Integration Appliance 将发送另一条消息,请求 SAP 系统落实该事务。编排将一直等待到 SAP 系统发送第二条消息,表明事务已落实后,才处理编排中的下一个活动。
- 如果从 BAPI 传回的返回码表明失败,Integration Appliance 将向 SAP 系统发送一条回滚请求。 编排将一直等待到 SAP 系统发送第二条消息,表明已发生事务回滚后,才处理编排中的下一个活动。
指定重试选项
- 从核对表中选择重试任务。 这样会显示重试面板。
- 配置重试选项以连接 SAP 系统。下表描述了用于连接 SAP 系统的重试选项:
重试选项 描述 1) 在两次重试之间等待 ___ 秒。 指定 Integration Appliance 在尝试建立与 SAP 系统的连接之前等待的秒数。 2) 在尝试连接 ___ 次后失败。 指定 Integration Appliance 在发出错误并停止处理当前编排作业之前尝试与 SAP 系统建立连接的最大次数。 如果部署包含 SAP 调用 BAPI 活动在内的编排,且 Integration Appliance 无法与指定的 SAP 系统建立连接,那么 Integration Appliance 会在系统和编排日志中将连接错误记录为“警告”,直至达到重试次数值。当达到重试计数时,Integration Appliance 会在系统和编排日志中记录错误,并且停止处理当前编排作业。例如,您将重试计数设置为 3。第一个、第二个和第三个连接错误在系统日志中显示为“警告”。Integration Appliance 将第四个连接错误记录为错误,并且停止处理当前编排作业。
映射活动的输入
- 在核对表中选择映射输入任务。
从 BAPI 的输入参数生成的 XML 模式显示为至活动面板中请求输入参数下的节点。此外,如果 BAPI 包含一些表,那么代表这些 BAPI 表的 XML 模式将显示为至活动面板中请求输入参数下的节点。
SAP 连接器还支持从端点动态连接到其他 SAP 系统。在运行时期间,如果希望实现以下目的,请在映射输入的 sapConnectionProperties 中添加可选参数:希望动态连接到端点面板中配置的 SAP 系统之外的 SAP 系统;希望使用不同于端点面板中使用的用户名和密码连接到同一 SAP 系统;希望 SSO 令牌不同于端点面板中添加的 SSO 令牌。下表中描述了 sapConnectionProperties 的参数:
表 1. 连接属性 可选参数 描述 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 将其关闭之前可以处于打开和空闲状态的分钟数。 - 在编排变量与 BAPI 输入参数和表之间创建映射。请参阅创建映射,以获取与映射有关的常规指示信息。
在运行时必须为 BAPI 输入参数或表的所有必选元素提供相应值。 可以通过为元素指定缺省值或通过将元素与输入节点链接来提供值。运行时期间,如果未提供必选元素的值,那么活动会在运行时期间抛出由 Web 管理控制台 (WMC) 报告的异常。如果在运行时期间没有为 BAPI 输入参数或表的可选元素提供值,在运行时期间不会抛出异常。
映射活动的输出
- 选择“核对表”中的映射输出任务。 从 BAPI 的返回类型生成的 XML 模式显示为自活动面板中响应输出参数下的节点。此外,如果 BAPI 包含表,代表此类表的 XML 模式将显示为自活动中响应节点下的节点。
- 在 BAPI 输出参数和表与编排变量间创建映射。请参阅创建映射,以获取与映射有关的常规指示信息。
有关部署 SAP 编排的注意事项
Integration Appliance 必须首先能够与 SAP 系统建立连接,然后您才可以使用 WMC 部署带有 SAP 活动的编排。如果 Integration Appliance 未能与 SAP 系统建立连接,则无法部署编排。