如今,SAP 等 ERP 系统作为业务总线,在企业生产运营中起着重要作用。然而在 ERP 系统之外,每个企业根据自身多年总结的生产运营经验,都具备独特的管理流程。为提升效率,企业往往需要构建各类业务应用,却常受限于传统开发方式导致的成本高昂、开发周期长、异构系统难融合以及代码质量难统一等问题。
现在,利用微软 Power Platform 低代码平台,开发人员和业务人员可围绕 SAP 等 ERP 业务总线,为企业快速构建智能化的应用。同时,通过预构建或自定义连接器,快速与 ERP 系统链接,进行数据交互。
自 2022 年 12 月微软正式发布支持 Power Platform 与 SAP 集成的一系列新功能起,运行 SAP 的每个组织都拥有了更轻松地实现业务流程的数字化转型和自动化的能力。这些功能包括:
I 01、预构建的 SAP 集成解决方案I 02、高级 SAP 系统连接支持I 03、更新的本地数据网关I 04、更新的 SAP ERP 连接器I 05、新的 Azure 逻辑应用函数
01
预构建的 SAP 集成解决方案
预构建的 SAP 集成解决方案(SAP Integration)通过 Power Platform 与 SAP ECC 或 SAP S/4HANA 系统集成。方案包含:Power Apps 模板、Power Automate 流以及更多组件和功能,详细介绍可见下方内容。另外,该解决方案支持直接下载使用,可点击文末“阅读原文”进入下载页。
1.适用于常见 SAP 流程的预构建 Power Apps
在这个预构建的解决方案中,Power Platform 为从订单到现金和从采购到付款的业务流程提供一套 Power Apps 应用。
销售订单输入和采购订单输入是 SAP 流程中常见的两项繁琐工作,如今,这两项任务会涉及的页面和数据属性已成功被简化为了 Power Apps 中的一个简单页面。在这些应用中,企业用户将能更快地完成常见任务,同时通过 Power Automate 中业务规则的自动化,确保数据准确性。
由于 Power Apps 是完全可配置的,用户还可以轻松地修改这些模板,从而灵活的满足组织的特定需求。
而随着不断扩展,预构建 SA P集成解决方案也将陆续支持把 Power Apps 应用于 25 个最常见的 SAP 业务流程中,包括:
01、从订单到现金–客户、报价、销售订单、交付、客户发票、客户付款和大规模定价更新
02、采购到付款 – 供应商、请购单、采购单、货物收据、供应商发票和供应商付款
03、从记录到报告–财务过账、GL 科目、成本中心、利润中心、现金应用和大规模上传日记账。
04、按库存生产/按订单生产 (MRP)–生产/加工订单、材料、货物移动、设备、工单和装运
以下为目前已有的 Power Apps 应用的部分示例:
预构建的 Power Apps 应用部分示例
2.适用于常见 SAP 流程的预构建 Power Automate
为了支持 25 个 SAP Power Apps应用,它们相应的 Power Automate 流也将预先构建在 SAP集成解决方案中。这些流程利用 SAP 发布的 API,可在任何组织的 SAP 环境中运行,且不受使用的 SAP 版本限制。
图为在 SAP 中批准采购订单的预构建流程示例
这些 Power Automate 流,可以让用户:
01、缩短实现价值的时间——企业用户不再需要花费时间来研究和试验 API。这些流开箱即用,且无需在 SAP 服务器上安装。
02、降低技术和管理负担——通过减少在 SAP 中使用自定义代码,企业用户将能够更轻松地升级流程并降低技术门槛和成本。
03、可持续性——SAP 已发布的 API 已得到数十年的支持。只要 SAP 继续支持其核心API,这些流就会一直可用。
目前已提供数十个 Power Automate 流来支持订单到现金和采购到付款业务流程。这一数字还在持续增长中,以下为部分示例:
预构建的 Power Automate 流部分示例
02
高级 SAP 系统连接
很多企业组织需要使用高级连接参数来管理用户会话。之前,运行 SAP 的客户会经常收到反馈,无法为用户会话使用某些高级连接参数,特别是支持在数千个用户之间进行负载平衡的消息服务器。现在,企业用户可以使用既定设置的连接参数来支持消息服务器、网关服务器和更高级的 SSO 配置。(查看已列出的参数:https://learn.microsoft.com/zh-cn/connectors/sap/#default)
SAP Basis 管理员现在可以在环境设置期间,为 SAP 系统设置为数据源环境变量:
然后可以使用新的 SAP 连接器在流中轻松引用 SAP 系统:
03
新的本地数据网关
本地数据网关充当桥梁,在本地 SAP 数据和 Microsoft 云服务(包括 Power Platform 和 Azure 逻辑应用)之间提供安全的数据传输。最新版本的本地数据网关处理两个 SAP 集成要求:
01、向后兼容性——使用以前版本的 SAP 连接器的客户仍然可以运行他们的流程。
02、增强的 SSO——Kerberos 委托现在可确保 SSO 是 Power Apps、Power Automate 和 SAP 之间的无缝体验。
04
新的 SAP 连接器
过去,Power Automate 中存在一个已知问题,即当选择来自 SAP 的复杂 API 时,参数在检索架构后将无法呈现。一旦检索到架构,就很难使用任何 SAP API。现在,Power Automate 中的新 SAP 连接器和操作实现了以下改进:
01、流创建者能够从下拉列表中选择高级 SAP 系统连接,而无需知道任何系统详细信息(例如,IP 地址、客户端 ID、系统编号)
02、选择 SAP API 后,它仅返回必需参数,并允许流创建者根据需要指定其他可选参数。
03、在高级系统连接中隐藏 SSO 和数据网关参数,以减少操作中所需的数据元素数量。
图为使用新 SAP 连接器的操作示意
未来,微软还将根据大家在使用复杂的 SAP API 过程中的反馈,进一步简化这一体验。
05
新的 Azure 逻辑应用函数
Power Automate 的表达式语言基于逻辑应用函数。为了更高效地处理 SAP 数据,最新添加了一些新函数:
01、isInt:如果数据属性为整数,返回 true。这允许流制定者在发送到 SAP API 之前确定是否应将前导零添加到 SAP 数据,或者在从 SAP 检索记录之后从 SAP 数据中删除前导零。
02、chunk:将文本区域、长字符串或文件内容拆分为 SAP API 的固定长度字符串数组。
03、reverse:按每个对象中找到的键对对象数组进行反向排序。
04、dateDifference:确定两个日期之间的差异,并以函数中指定的时间单位返回。这对于使用基于时间计费的客户尤其有用。
05、isFloat:有一个独特的边缘情况,一些 SAP API 以用户的本地化格式返回货币字符串,这会给数学运算带来问题。此函数与 float() 结合使用可删除格式,以便正确执行数学运算。
06、parseDateTime:将时间戳的字符串表示形式转换为标准 ISO 8601 格式。此函数的输出可以可靠地用于对时间戳执行其他操作,就像在日期和时间函数中定义的函数一样。
07、formatDateTime:一个新的可选参数区域设置已添加到现有 formatDateTime 中。如果未指定,将使用默认区域设置。
08、nthIndexOf:允许查找子字符串的第 n 次出现。
09、slice:提供提取子字符串的新方法。现有函数子串通过提供起始索引和长度已经允许此类功能。
以下是一个 Power Automate 流的示例,该流正在检查 SAP 物料 ID 是数字还是字母数字。如果它是数字,表达式将使用 SAP API 所需的前导零来格式化 SAP 材料 ID:
更多信息
以上仅为近期的部分新能力展示,用户还可以通过链接访问文档,了解更多Power Platform 与 SAP 集成相关的解决方案和指南:https://aka.ms/learn-sap-integration