首页 > 编程知识 正文

workflow(workflow工作流开发)

时间:2023-05-04 04:40:25 阅读:72994 作者:1292

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

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

作为全球企业管理软件巨头,SAP也有自己的工作流解决方案。 历史最悠久最经典的,当然是SAP ABAP Workflow。

SAP CRM的一个典型工作流用户是客户向呼叫中心的相应电子邮件地址发送邮件。

在SAP CRM后台创建的工作流中,此邮件的发送将使呼叫中心自动创建相应的条目,并允许座位进行处理。

以及SAP Cloud for Customer工作流程:

有关使用上一篇文章中的SAP业务技术平台(BTP )中的业务规则服务的详细信息,请参阅SAP BTP Cockpit Boosters中的setupaccountforworkflowmanagement 快速完成了在sap业务技术平台(以下简称SAP BTP )上使用工作流功能所需的配置。

本文还介绍了如何创建SAP Business Rules,以及如何使用HTTP POST调用rule服务。

在本文中,您将部署SAP从SAP API Hub发布的标准业务规则,并使用此标准规则学习如何使用sap BTP工作流。

进入“管理项目”APP应用程序,然后选择importprojectfromapibusinesshub。

要将内容从API Business Hub导入SAP BTP,必须首先配置指向名为xsddg的API Hub的逻辑系统,该API Hub在SAP BTP中包含目标。

目标名称为BUSINESSRULES_APIHUB,目标名称为SAP BTP Cockpit,选择基本身份验证方法,然后输入登录到API Hub的用户名和密码

创建目标和逻辑系统后,可以从API Hub导入以SAP标准发布的Business Rule和equipmentdeterminationbusinessrules。

导入此Rules后,将其部署到Cloud Runtime中,以便以后在本文创建的工作流APP应用程序中使用http开机自检方法。

该Business Rule用于新员工的入职场景(onboarding ),根据员工模型上的几个字段,可以决定应该使用哪个型号的计算机设备(Equipment )。

接下来,使用业务应用程序studio开发工作流APP应用程序。

有关此SAP BTP开发工具的详细信息,请参阅我的文章。 SAP新一代全堆栈开发工具: SAP业务应用程序studio。

从SAP Github下载参考工作流并将其应用于本地,然后将其导入到sap业务应用程序studio中。

这是多目标应用程序(sapbtpmta ) APP,更多信息请参考我的文章。 这是sap云平台的三端错误APP。

此APP应用程序的核心逻辑实现位于文件onboard.workflow中,简要介绍了其重要步骤。

Prepare Rules Payload :在项目的scripts文件夹下的PrepareRulesPayload.js文件中实现的脚本任务类型任务。

此任务的后续任务Determine Equipment在此Script Task中进行简单编码,以便在HTTP Post中使用刚部署到sap BTP云运行时的业务服务

Determine Equipment :这是一个服务任务,它以rest风格的API方式调用Destination BUSINESS_RULE指向的Business Service。

destination gyd GK上一篇文章介绍了如何使用SAP业务技术平台(BTP )上的业务规则服务,详细介绍了这些字段的维护方法。

/p>

这个 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 使用介绍

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

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。