关于sap:SAP-业务技术平台BTP-Workflow工作流功能介绍

59次阅读

共计 3735 个字符,预计需要花费 10 分钟才能阅读完成。

这是 Jerry 2021 年的第 45 篇文章,也是汪子熙公众号总共第 322 篇原创文章。

所谓工作流,是一种用于业务流程自动化的工具,由一系列步骤、工作或事件组成。

作为世界企业治理软件巨头,SAP 天然也有本人的工作流解决方案。历史最悠久最经典的,当然就是 SAP ABAP Workflow.

SAP CRM 一个经典的工作流用例,就是客户给某呼叫核心对应的邮箱地址发送一封邮件:

通过 SAP CRM 后盾创立的工作流,该邮件的发送,会触发呼叫核心主动创立一条对应的条目,供座席解决:

以及 SAP Cloud for Customer 里的工作流:

前一篇文章 SAP 业务技术平台 (BTP) 上的 Business Rules Service 应用介绍,咱们曾经应用了 SAP BTP Cockpit Boosters 中的 Set up account for Workflow Management, 疾速实现了在 SAP Business Technology Platform(下文简称 SAP BTP)上应用 Workflow 性能所需的配置。

该文章还介绍了如何一步步创立 SAP Business Rules 以及如何应用 HTTP POST 的形式,去调用该 Rule Service.

本文咱们从 SAP API Hub 导入一个 SAP 公布的规范 Business Rules, 应用这个规范 Rules 来学习 SAP BTP Workflow 的用法。

进入 Manage Projects 利用,抉择 Import Project from API Business Hub:

要从 API Business Hub 导入内容到 SAP BTP,须要首先在 SAP BTP 配置一个指向 API Hub 的逻辑系统,命名为 JerryAPIHub,蕴含一个 Destination:

Destination 名称为 BUSINESSRULES_APIHUB, 这个 Destination 的名称在 SAP BTP Cockpit 里,抉择 Basic Authentication 形式,输出登录 API Hub 的用户名和明码。

Destination 及逻辑系统创立结束后,就能够从 API Hub 导入 SAP 规范公布的 Business Rule 了,名为 Equipment Determination Business Rules:

导入该 Rules 后,将其部署到 Cloud Runtime,这样其能力被本文后续创立的 Workflow 利用,通过 HTTP POST 形式生产。

这个 Business Rule 用于新员工入职场景(onboarding), 能够依据员工模型上某些字段,决定出其应该应用什么型号的电脑设备(Equipment).

接下来,咱们能够应用 Business Application Studio,开发一个 Workflow 利用。

对于这个 SAP BTP 开发工具的更多介绍,参考我的文章:SAP 新一代全栈开发工具:SAP Business Application Studio.

从 SAP Github 下载一个 Reference Workflow 利用到本地,再将其导入到 SAP Business Application Studio 中。

这是一个 SAP BTP MTA(Multi-Target Application)利用,更多细节参考我的文章:SAP 云平台里的三叉戟利用。

这个利用的外围逻辑实现在文件 onboard.workflow 中,上面简要介绍其关键步骤。

Prepare Rules Payload:类型为 Script Task 的工作,其实现位于工程 scripts 文件夹下的 PrepareRulesPayload.js 文件里。

该工作的后续工作 Determine Equipment,咱们会通过 HTTP Post 生产刚刚部署在 SAP BTP Cloud Runtime 上的 Business Service,因而须要在这个 Script Task 内进行一些简略的编码,组装 HTTP Post 近程调用 Business Service 所需的输出参数:

Determine Equipment:这是一个 Service Task,通过 Restful API 形式调用 Destination BUSINESS_RULE 指向的 Business Service.

Destination 这些字段的具体保护形式,在 Jerry 前一篇文章 SAP 业务技术平台(BTP) 上的 Business Rules Service 应用介绍 曾经具体介绍过。

这个 Restful API 调用的输入,存储在名为 EquipmentsInfo 的 Data Object 里:

Change or Confirm Equipment: 这是一个 User Task,用户能够对调用 Business Rule 返回的后果蕴含的设施信息,进行调整和确认。这个工作的 UI,实现在文件夹 forms 的 ConfirmOrChangeEquipment.form 文件里。用户确认之后,进入下一步审批流程:

Approve Equipment:这也是一个 User Task,须要用户手动点击 Approve 或 Reject,进行电脑设备的批准或者回绝。

将该利用 build 之后,生成一个 archive 文件,再将该文件应用右键菜单进行部署:

最初,咱们来测试一下这个 Workflow 利用的运行成果。进入 Configure Visibility Scenarios 利用,创立一个新的 Scenario. Process Visibility Scenario 用于接管工作流事件, 提供了可视化界面供用户浏览工作流的执行明细。

将咱们之前导入到 SAP Business Application Studio 里的 id 为 onboard 的 Workflow 模型,导入到这个 Scenario 里来,能看到其步骤内所有的事件和上下文。

上面咱们手动触发这个工作流利用,察看其执行细节。进入利用 Monitor Workflows:

抉择 Start New Instance,创立一个新的工作流实例:

因为之前我在 SAP Business Application Studio 里进行 Workflow 建模时,已经指定其 Start Event 反对 Sample Context,并配置了一个 json 文件作为 Sample Data:

所以每当创立新的 Workflow 实例时,其输出数据能够从 Sample Data 里主动带进去。抉择 Start New Instance and Close:

回到 Fiori Launchpad,此时我的收件箱 Inbox 里,新增了一个条目:

这背地其实产生了很多事件:Workflow 利用里 Determine Equipment Service Task 失去执行,通过 HTTP POST,生产部署在 SAP BTP 上的 Business Rules Service,后者依据咱们在 Start New Instance 里传入的 Sample Data,返回主动决定出的设施明细。

下图就是之前 Workflow 利用建模里的 User Task 的运行时界面。列表显示的内容,就是上图 HTTP POST 返回的 EquipmentsInfo 数据。这里我浏览这些返回后果,确认无误后,点击 Confirm 按钮,进入工作流下一个步骤即审批流程。

在审批流程,我能够抉择 Approve 或者 Reject:

在 Monitor Workflows Instances 利用里,能够查看到目前为止该工作流工作的执行细节:

比方能察看到应用 HTTP Post 调用 SAP BTP Business Service 的 endpoint,和破费的工夫:

至此,SAP Business Technology Platform 上的工作流应用介绍结束。感激浏览。

更多浏览

  • 应用 SAP iRPA Studio 创立的本地我的项目,如何部署到 SAP 云平台上?
  • 在 SAP 云平台上部署和运行 Docker 利用
  • 应用 SAP 云平台 Mobile Service 开发挪动利用
  • SAP 云平台上的 Low Code Development(低代码开发)解决方案
  • SAP 智能机器人流程自动化解决方案
  • 在 SAP 云平台 ABAP 编程环境上编写第一段 ABAP 程序
  • 云端的 ABAP Restful 服务开发
  • 应用 abapGit 在 ABAP 零碎和 SAP 云平台 ABAP 环境之间进行代码传输
  • SAP 云平台上的 ABAP 编程环境里如何生产第三方服务
  • ABAP 开发者上云的时候到了 – 当初大家能够收费应用 SAP 云平台 ABAP 环境的试用版了
  • 学而不思则罔 – SAP 云平台 ABAP 编程环境的由来和实用场景
  • SAP 云平台里的三叉戟利用
  • SAP 2019 TechEd Key Note 解读:云时代下 SAP 从业人员如何做二次开发?
  • 有哪些 ABAP 关键字和语法,到了 ABAP 云环境上就没方法用了?
  • 应用 SAP Cloud Application Programming 模型开发 OData 的一个理论例子
  • SAP 云平台和第三方 CRM 解决方案 (火锅) 互联
  • 应用 Java+SAP 云平台 +SAP Cloud Connector 调用 ABAP On-Premise 零碎里的函数
  • 应用 JDBC 操作 SAP 云平台上的 HANA 数据库
  • 用 JavaScript 拜访 SAP 云平台上的服务遇到跨域问题该怎么办
  • 企业数字化转型与 SAP 云平台
  • SAP 云平台,区块链,超级账本和智能合约
  • SAP 业务技术平台(BTP) 上的 Business Rules Service 应用介绍

更多 Jerry 的原创文章,尽在:” 汪子熙 ”:

正文完
 0