第五章 介绍Productions - 业务流程和业务逻辑

news2024/12/23 14:21:13

文章目录

  • 第五章 介绍Productions - 业务流程和业务逻辑
  • 业务流程和业务逻辑
  • 介绍
  • 业务流程的类型
  • 数据转换
  • 业务规则

第五章 介绍Productions - 业务流程和业务逻辑

业务流程和业务逻辑

本章描述业务流程中支持的逻辑种类。

介绍

业务流程是production的中间部分。它们接受来自production内部主机类(业务服务或业务流程)的请求,然后处理请求或将它们转发到production内部的其他主机类进行处理。

建议在production中进行以下分工:使用业务服务从生产外部接收输入并将其(作为消息)简单地转发到production中。使用业务流程来处理任何需要的业务逻辑。使用业务操作从生产内部接收消息,并简单地为生产外部的目的地生成输出。也就是说,将业务逻辑集中在业务流程中。

因此,IRIS 为业务流程中的复杂逻辑提供了广泛的支持,并且该逻辑可以由非技术用户定义。

首先,业务流程可以包含自己的复杂逻辑。它还可以使用以下可重复使用的物品:

数据转换计算消息内容并将更改应用到消息内容。

业务规则在决策点更改业务流程的行为,或根据消息类型、消息内容或消息来源将消息发送到特定目的地。

IRIS 提供的工具使非技术用户能够定义业务流程、数据转换和业务规则。这些用户无需编程或绘图技能即可直观地查看和编辑逻辑。

请注意,业务流程、数据转换和业务规则中可用的较低级别选项之间存在重叠。有关比较,请参阅 Developing Productions 中的“业务逻辑工具的比较”。在决定如何组织逻辑之前,有必要查看这些选项。

业务流程的类型

IRIS 提供以下一般类型的业务流程:

  • BPL 流程,基于类 Ens.BusinessProcessBP。要创建这些流程,可以使用专供非技术用户使用的图形编辑器。此编辑器在管理门户和 Studio 中可用。请参阅开发 BPL 流程。

这些流程的名称来自 BPL(业务流程语言),这是 IRIS 用于表示其定义的基于 XML 的语言。

  • 路由进程,基于类 EnsLib.MsgRouter.RoutingEngineEnsLib.MsgRouter.VDocRoutingEngine

IRIS 提供一组类来路由特定类型的消息。以下书籍指出了用于不同类型消息的路由过程:

Message TypeSee
EDIFACTRouting EDIFACT Documents in Productions’
X12Routing X12 Documents in Productions’
XMLRouting XML Virtual Documents in Productions’

要使用这些类,通常不需要编码。然而,有必要提供一组业务规则,本章稍后将介绍。

  • 自定义业务流程,基于类 Ens.BusinessProcess 。请注意,前面列出的所有业务流程类都继承自此类。在这种情况下,需要使用支持的 IDE(例如 Studio)来开发自定义代码。

EnsLibDemo 包提供了许多示例。

有关定义自定义业务流程的信息,请参阅开发产品中的“开发业务流程”。

产品可以包括这些业务流程的任意组合。

下面显示了 BPL 业务流程的部分示例,如 BPL 编辑器中所示:

在这里插入图片描述

数据转换

数据转换创建一条新消息,它是另一条消息的转换。可以从业务流程、另一个数据转换或业务规则调用数据转换。

当转换一条消息时,数据转换会换掉旧的消息主体对象(源)并将其交换为新的对象(目标)。在此过程中发生的一些转变可能包括:

  • 将源属性的值复制到目标属性。
  • 使用源上的属性值执行计算。
  • 将计算结果复制到目标上的属性。
  • 将文字值分配给目标上的属性。
  • 忽略源上与目标无关的任何属性。

数据转换是基于 Ens.DataTransform或其子类 Ens.DataTransformDTL的类。

  • 如果使用 Ens.DataTransformDTL,则转换称为 DTL 转换。要创建这些转换,可以使用专供非技术用户使用的图形编辑器。此编辑器在管理门户和 Studio 中可用。有关详细信息,请参阅开发 DTL 转换。

这些转换的名称来自 DTL(数据转换语言),这是 IRIS 用来表示其定义的基于 XML 的语言。

  • 如果 Ens.DataTransform,则转换是自定义转换。在这种情况下,必须使用受支持的 IDE,例如 Studio。有关定义这些的信息,请参阅开发产品。

下面显示了一个示例 DTL 转换,如在 DTL 编辑器中所见:

在这里插入图片描述

业务规则

业务规则(也称为业务规则集)可以返回值、转换数据或两者。可以从业务流程或其他业务规则中调用业务规则。

业务规则是基于 Ens.Rule.Definition 的类。在管理门户中定义这些内容,该门户为非技术用户提供了一个可视化编辑器。下面显示了一个部分示例,如本编辑器中所示:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/531055.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring【Again】——复杂POJO的绑定

简单介绍: Again系列是将之前的内容我认为做的不好的地方或者是理解不到位的地方再来一次,加深记忆或者改错。我们就在来复习一下之前我们说过的复杂类型的数据绑定。 先来复习一下简单数据绑定: 简单数据绑定就是我们在传递参数的时候&am…

京东jd商品详情API接口(item_get-根据ID取商品详情)代码封装

item_get-根据ID取商品详情接口 通过代码封装该接口可以拿到商品标题,商品价格,商品促销信息,商品优惠价,商品库存,sku属性,商品图片,desc图片,desc描述,sku图片&#xf…

文件上传下载系列——大文件分片上传

文章目录 概述实现步骤:应用场景 代码实操:前端:文件切片:分片上传: 后端:校验和保存:合并文件片段:完成上传: 总结优点:缺点: 升华 概述 文件分片…

spring cache和SpEL表达式

spring cache的 CachePut如果方法体内容变了,缓存还有效吗 当使用CachePut注解时,其目的是更新缓存,即在方法执行完毕后将返回结果加入缓存中。如果方法体内容发生变化,则更新后的结果会被加入缓存中,而缓存中原来的数据会被替换…

ORACLE 新闻速递 ORACLE 23C 免费提供给开发者 为什么???

开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共…

利用AI将脑信号解码为神经义肢控制

机器学习和人工智能的快速发展,它们已经产生了一系列能够学习大量数据之间复杂非线性关系的神经网络模型。深度学习算法在各种应用中取得了巨大的成功,包括计算机视觉、自然语言处理和机器人类等。最近,神经网络的中一项引人注目的应用是通过…

B 站构建实时数据湖的探索和实践

摘要:本文整理自 bilibili 大数据实时团队资深开发工程师周晖栋,在 Flink Forward Asia 2022 实时湖仓专场的分享。本篇内容主要分为四个部分: 1. 背景和痛点 2. 场景探索 3. 基建优化 4. 总结和展望 Tips:点击「阅读原文」查看原…

VMware之esxcli命令

一、esxcli命令简介 esxcli命令是用于管理VMware ESXi主机的命令行实用程序。它允许管理员在主机上执行各种管理任务,如配置网络设置、存储、虚拟机等。实际上我们在控制台的所有操作最终都会转换为命令在后台执行。以下是一些常见的esxcli命令: esxcli…

第三章 存储系统

1. 主存简单模型和寻址概念 存储器芯片的基本结构 寻址 2.存储器RAM 两种RAM的比较 DRAM的刷新 3.ROM(只读存储器) 为什么需要ROM? 因为RAM里面的数据容易丢失。 4.存储器基本概念 存储器的分类 性能指标 数据的宽度:在一个存储周期中存储的位数 层…

感烟探测器漂移补偿

3.8 慢速发展火灾响应性能 3.8.1 探测器的漂移补偿功能不应使探测器对慢速发展火灾的响应性能产生明显影响。 3.8.2 当无法用模拟烟气浓度缓慢增加的方法评估探测器对慢速发展火灾响应性能时,可以通过物理试验和模拟试验对电路和/或软件分析确定。 3.8.3 探测器评估…

丰富多彩 | Android 14 Beta 2 发布

作者 / Dave Burke, VP of Engineering Google I/O 的大幕已经拉开,我们也为大家带来了 Android 14 的第二个 Beta 版。我们在 Google I/O 上为大家准备了许多精彩的演讲,包括对 Android 14 许多新功能的详细介绍。这次发布的 Beta 2 聚焦相机和媒体、隐…

只要学会这些AI工具,一个人就是一家营销咨询公司

本教程收集于:AIGC从入门到精通教程 只要学会这些AI工具,一个人就是一家营销咨询公司 随着AI工具的不断涌现,您只需掌握市面上热门的AI工具,便可独自开展营销咨询公司。通过一系列AI工具,您可以为企业提供全案服务,收获丰厚回报。 例如,在协助一家美妆初创公司出海时,…

上下文工程:基于 Github Copilot 的实时能力分析与思考

上个月在计划为 AutoDev 添加多语言支持时候,发现 GitHub Copilot 的插件功能是语言无关的(通过 plugin.xml 分析),便想研究一下它是如何使用 TreeSitter 的。可惜的是,直到最近才有空,研究一下它是如何实现…

印刷和喷绘过程中高精度油墨流量和压力的串级控制解决方案

摘要:针对现有技术在印刷或喷绘设备中油墨流量控制不准确,使得油墨粘稠度产生异常造成批量性质量方面的问题,本文提出了相应的串级控制解决方案,即通过双回路形式同时控制油墨的流量和压力。本解决方案不仅可以保证油墨最终流量的…

【C++ 入坑指南】(07)判断

文章目录 一、if 语句1. 单行格式 if 语句2. 多行格式 if 语句 二、三目运算符三、switch 语句四、算法题4.1 分段函数 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句&am…

C++ - 使用RBTree来封装Set与Map

前面的文章中我们简单的实现了一个红黑树,实现了它的插入的功能,在本文中我们来对其进行修改并构建Set与Map。 下面我们来从源码中截取一点有关Map与Set的代码; 可以看出,在STL30中构建Map与Set使用的是同一个红黑树模板&#xf…

开箱即用!AI模型库全新发布,一站式在线开发部署!

人工智能学习与实训社区飞桨AI Studio模型库全新升级!支持模型创建、上传、托管并一键调用模型线上开发部署! 飞桨AI Studio已接入飞桨生态特色模型库,全面覆盖模型领域,包含文心系列大模型、CV、NLP、语音、科学计算、量子计算等…

Linux常用命令——hwclock命令

在线Linux命令查询工具 hwclock 显示与设定硬件时钟 补充说明 hwclock命令是一个硬件时钟访问工具,它可以显示当前时间、设置硬件时钟的时间和设置硬件时钟为系统时间,也可设置系统时间为硬件时钟的时间。 在Linux中有硬件时钟与系统时钟等两种时钟。…

XR文字输入技术

VR/AR/MR(统称为XR)有望成为个人电脑、手机之后的下一代计算平台,元宇宙的硬件入口。 近年来XR发展迅猛,不仅可以应用于游戏、影视领域,还在军事、医疗、办公、教育等领域有巨大的发展前景。然而相比于XR强大的显示技…

IPWorks IPC .NET 2022.0.85 Crack

IPWorks IPC .NET一个组件库,用于通过命名管道向应用程序添加进程间通信 (IPC) 功能。包括客户端、服务器和外部进程执行组件,用于进程之间的简单对等通信。 最新的IPWorks IPC现已上市!最新版本的 IPWorks IPC 具有现…