Power Platform 应用程序制作者可以利用 Microsoft 的 Power Platform SAP 连接器构建应用程序,无缝集成来自 SAP 系统的数据。 这种集成支持创建应用程序、工作流和助手,通过利用 SAP 数据来增强业务流程。
SAP 连接器概述
Microsoft 提供多个连接器来集成 SAP 系统,包括 SAP ERP 连接器和 SAP OData 连接器。 这些连接器提供 Power Platform 和 SAP 之间的数据交换,支持 RFC 和基于 HTTP 的连接。 请参阅连接 Power Platform 和 SAP,了解在您的环境中选择要使用的连接器和设置连接器的更多信息。
使用 SAP RFC 和 BAPI
SAP 远程函数调用(RFC)和业务应用程序编程接口(BAPI)对于与 SAP 系统的交互至关重要。 SAP RFC 是实现 SAP 和其他系统之间通信的基础。 RFC 必须在 SAP 中远程启用,以便通过 Power Platform SAP 连接器访问。 BAPI 是标准化的 RFC,允许外部应用程序在 SAP 中执行复杂的业务操作。
- RFC:应用程序开发者可以使用 RFC 从 SAP 中检索特定的细节。 例如,RFC_GET_TABLE_ENTRIES 可用于读取特定表的内容,RFC_GET_FUNCTION_INTERFACE 可检索特定功能模块的详细信息。
- BAPI:BAPI 使应用程序开发者能够执行创建、更新或从 SAP 中检索数据等操作。 例如,BAPI BAPI_SALESORDER_CREATEFROMDAT2 允许创建销售订单。
与您组织中的 SAP 专家交谈,或者要求 Microsoft Copilot 找到具体的 RFC 和 BAPI。
使用复杂的 JSON 结构
在调用 Power Platform SAP 连接器时,应用制作者通常需要处理复杂的 JSON 结构。 这包括解析和构造 JSON 有效负载,以便有效地与 SAP API 交互。
- 构建 JSON: Power Automate 提供构建 SAP API 所需的 JSON 负载的操作。 这包括定义结构并用必要的数据填充它。
- 解析 JSON:Power Automate 还提供了解析来自 SAP 连接器的 JSON 响应的操作。 这允许应用程序制作者提取特定数据元素并在后续步骤中使用它们。
要了解有关在 Power Automate 中使用 JSON 结构的更多信息,请参考在 Power Fx 中使用 JSON 和 Power Automate 云端流白皮书。
一般申请流程
- 触发器:Power App 触发 Power Automate 流,在 SAP 中创建销售订单。
- 构造 JSON:该流用销售订单详细信息构造一个 JSON 有效负载。
- 调用 BAPI:该流使用 SAP ERP 连接器调用 BAPI BAPI_SALESORDER_CREATEFROMDAT2。
- 解析回复:流解析 JSON 回复以提取销售订单号。
- 更新应用程序:Power App 使用销售订单号进行更新,以供用户参考。
应用构建技巧
这里有一些技巧和资源可以帮助您开始构建与 SAP 一起工作的画布和模型驱动应用。
不使用 SAP API 处理数据对象
如果 SAP 未为数据对象提供 API,则有以下几个选项可用:
- 中间文档(iDoc): 使用通用 API 同步调用任何对象类型的 iDoc。
- 批量输入: 使用通用 API 同步处理 BDC 录制。
- 旧系统迁移工作台 (LSMW):Power Automate 可以创建一个能够放在 SAP 应用程序服务器上并在事务 LSMW 中被处理的文件。
- 自定义功能模块:在 SAP 中创建一个支持远程的自定义功能模块,并使用 Power Automate 云端流调用。
处理自定义 SAP 字段
在 SAP 中处理自定义字段的方法取决于它们的位置:
- 附加到 SAP 标准表:在 Power Automate 流中使用 BAPI 扩展结构来填充这些字段。 如果根据 ABAP 字典(SAP TCode SE11)中表的 SAP 自定义字段标准正确扩展了表,则支持附加到标准 SAP 表的自定义字段。 有关更多信息,请咨询您组织中的 SAP 专家。
- 自定义 SAP 表:确保更新这些表的功能模块是远程启用的,以允许 SAP 连接器调用它们。
诊断用户安全错误
要诊断用户安全错误,请在 SAP GUI 应用程序的事务 ST01 中运行跟踪,以确定用户的安全配置文件中缺少哪些内容。 确认用户拥有 S_RFC 授权对象,这是执行 BAPI 和启用远程的定制 RFC 所必需的。