首页 > 其他分享 >从基础到复合:一文看懂jvs规则引擎中的变量进化论

从基础到复合:一文看懂jvs规则引擎中的变量进化论

时间:2023-10-19 10:32:42浏览次数:30  
标签:一文 加工 jvs 进化论 复合 引擎 规则 数据 变量

JVS-rules中的“变量”概念与编程语言中的变量类似,但它们通常在规则系统中处理条件判断、业务结果复制场景,如下所示:

  1. 条件判断:在规则引擎中,规则通常由两个部分组成:条件和分支。变量用于描述条件部分中的数据和状态。例如,一个规则可能是:“如果温度超过30度,则执行打开空调的分支”。这里的“温度”就是一个变量,它描述了一个条件。
  2. 动作执行:当规则引擎确定某个规则的条件满足时,与该规则节点执行后续的操作或者跳转结束节点。变量也可以在动作中使用,以便根据条件的满足情况来执行相应的操作。
  3. 上下文信息:变量可以用来在规则执行过程中传递上下文信息。这意味着在规则引擎中,变量可以代表各种数据,例如传感器读数、用户输入等。
  4. 动态性:规则引擎通常允许在运行时动态地修改变量的值或属性,以便适应不同的场景或条件。
  5. 作用域:变量可能有不同的作用域,取决于规则引擎的设计。一些规则引擎可能会将变量限制在特定的规则中,而另一些可能允许变量在整个规则集中共享。
  6. 数据类型:变量可以具有不同的数据类型,例如数值、字符串、布尔判断值,具体取决于规则引擎的实现。
  7. 决策支持:规则引擎中的变量用于支持决策过程,使得规则可以根据不同的条件和数据进行灵活的决策。

从基础到复合:一文看懂jvs规则引擎中的变量进化论_数据

那么我们如何理解复合变量与基础变量呢?

基础变量

"基础变量"通常指的是编程中的基本数据类型,也叫做原始数据类型或简单数据类型。这些基本数据类型是决策中直接支持的最基本的数据类型,它们通常包括数值、字符、布尔值等。

这种类型的变量我们通常可以通过函数加工去做数据转换例如 y=f(x) ,那么 y 和 x 都是变量 ,我们可以通过把 x 传入函数进行加工,然后获得新的数据,系统中提供了大量函数加工的 方法,如下图所示:

从基础到复合:一文看懂jvs规则引擎中的变量进化论_数据_02

①:定义的一变量名 :Y

②:定义的变量的说明备注

③:选择这个变量加工的函数,系统提供了100+的标准函数,这里可以自定义扩展自己所需要的函数

④:入参列表选择窗,这里可以是选择整个决策的入参、可以选择外部API输出的结果,也可选择系统中已经存在的变量(嵌套使用)

⑤:具体加工Y 的函数配置表达式

按照上述的例子 ,整个过程就是在调用这个决策的时候,业务调用方传入:(1,2)两个参数,那么 X1=1 ,X2=2,在后续的执行过程中 Y=3,可以用于判断、赋值等多个场景使用。

复合变量

那么什么又是复合变量呢?这里我们可以简单理解为复合变量可以 想成 一张经过加工后的 数据表(多行数据),这里复合变量就是通过对一个数据库的表进行查询,做了相应的数据过滤,然后获得的数据结果,那么这个变量中就表示了多行数据

从基础到复合:一文看懂jvs规则引擎中的变量进化论_数据类型_03

如上图所示,这个变量获取的方式 是来源于数据库的数据查询,然后在界面上通过流程化的数据加工(过滤、关联、转换等操作),然后把需要的多行数据放如到变量之中。

那么这种复合变量如何使用呢?

  • 我们可以把这种变量作为明细查询的数据,通过规则的结果值返给业务端,如下图所示

从基础到复合:一文看懂jvs规则引擎中的变量进化论_全局变量_04

  • 也可以对变量进行嵌套加工,把一个复合变量传化为一个基础变量,再用于规则的判断,系统中提供了对集合操作(复合变量输出的结果)的函数,如下图所示,可以将复合变量转换为基础变量。

从基础到复合:一文看懂jvs规则引擎中的变量进化论_数据_05

  • 复合变量的加工方式,如下图所示,包括数据数据过滤、多表关联、数据分组汇总等等各种操作

从基础到复合:一文看懂jvs规则引擎中的变量进化论_全局变量_06

①:各种数据加工的算子

②:通过流程化、拖拽化的方式,把各种算子链接起来,实现各种多行数据的加工处理,包括 数据的增删改查、数据的跨库、跨API等各种加工操作

③:对不同算子的具体的配置操作

变量使用的总结

基础变量就是对单一的数据进行加工, 复合变量就是对多行数据进行加工(实现重复、循环的数据加工操作),复合变量可以通过函数加工 转换为基础变量。

下一期详细介绍变量中函数的操作说明

在线demo:http://rules.bctools.cn/

gitee地址:https://gitee.com/software-minister/jvs-rules

往期干货回顾

智能金融决策策略,规则引擎在大数据金融行业的实战案例

规则引擎(JVS-rules):从应用到场景的全面解析

JVS-rules规则引擎,解决大数据风控的自动化决策利器

标签:一文,加工,jvs,进化论,复合,引擎,规则,数据,变量
From: https://blog.51cto.com/u_15454015/7931573

相关文章

  • 低代码开发重要工具:JVS列表页与表单配置全解析
    在JVS低代码开发平台中,操作页面与数据模型之间关系是非常紧密的,一个简单列表页、表单的交互,这个过程我们可以大致分为几个步骤:页面与数据模型的说明创建目录1、创建列表页2、列表页配置设置列表页的字段,保存(系统会自动创建对应的数据模型)刷新预览列表页配置的效果设置列表新增按钮......
  • 一文讲透:低代码平台是什么?低代码平台应该如何挑选?
     低代码平台是一种用于快速应用程序开发的软件开发工具。它通过简化和自动化开发过程,使非专业开发人员也能够轻松构建应用程序,减少了传统编码的需求。在低代码平台上,开发者可以使用可视化的界面、拖放式的组件和预定义的模块来设计和定制应用程序。选择合适的低代码平台对于......
  • 一文讲透:低代码平台是什么?低代码平台应该如何挑选?
    低代码平台是一种用于快速应用程序开发的软件开发工具。它通过简化和自动化开发过程,使非专业开发人员也能够轻松构建应用程序,减少了传统编码的需求。在低代码平台上,开发者可以使用可视化的界面、拖放式的组件和预定义的模块来设计和定制应用程序。选择合适的低代码平台对于企业来说......
  • JVS规则引擎及智能BI又更新新功能啦!赶紧来试试
    规则引擎更新功能新增:1.复合变量新增排序、排名功能可以按照特定的顺序对数据进行排列,确定规则的优先级,可以提高数据处理效率,帮助分析人员更好地了解数据分布和趋势。2.决策流新增动态日志功能动态日志可以记录规则执行的过程和结果,有助于提高规则执行的可观察性和可诊断性,从而保......
  • 7×24无人值守直播推流软件开发实战,一文为你揭开视频推流的底层原理(附源码)
    一、前言你有看到过那种不间断型的、循环播放视频音乐的直播间吗?或者那种直播播放电影的直播间?还有层出不穷的文章,类似如下标题:“如何搭建一个24小时不间断的直播间?躺入xxxx元!”“24小时电影直播间,每天到账xxx~xxxx,不出镜副业,人人可做!”“50块的云服务器直播推流让我月入过千?......
  • 告别单调的列表页,探索JVS低代码列表页设计的新思路
    列表页是什么?列表页是管理平台中的基础页面,核心的逻辑是实现数据的增删改查(CRUD),列表页核心的几个要素:页面内容的数据展示、查询条件、页面按钮及按钮触发的逻辑。列表页配置具备应用配置权限的用户,可以在列表页目录上,鼠标悬空,系统会弹出列表页设计的菜单,如下图所示:点击“设计页面”......
  • Spring Boot如何实现邮件发送图片邮件?一文带你学会它!
    ......
  • 一文带你了解自动化测试是什么?
    本章主要讲解自动化测试的含义、分类、项目使用,以及自动化测试工具的优势。一、自动化测试概述1、什么是自动化测试?自动化测试是软件测试活动中的一个重要分支和组成部分。随着软件产业的不断发展,市场对软件周期的要求越来越高,于是催生了各种开发模式,如大家熟知的敏捷开发,从而......
  • 英语每日一文
    英文语法球类前面加play;playFootball乐器前面加playthe;playtheviolinhour前面加an最高级前面加the;thelongestmuch+形容词比较级or最高级the+最高级不可数little→less可数few→fewerhotas/so···as/as···as不如···/没有···/一样eg.Heisnotsotal......
  • 一文读懂HTTP协议
    1.HTTP1.0和HTTP1.1之间有哪些区别连接方面,http1.0默认使用非持久连接,而http1.1默认使用持久连接。http1.1通过使用持久连接来使多个http请求复用同一个TCP连接,以此来避免使用非持久连接时每次需要建立连接的时延。资源请求方面,在http1.0中,存在一些浪费带宽的现象,例......