1. 首先在业务站点下的 mdl 目录中为某个业务表单新增一个规则文件,文件类型为 json 文件,如下图所示:
![](https://box.kancloud.cn/eba4c63c7a798f5780c0c89250a3a1fb_418x637.png)
2. 在规则文件的 calcRules 节点中定义表达式,每个表达式以 json 对象的方式组织,表达式可以有多个,表达式中的变量因子是模型文件中的具体的字段标识,比如:金额字段标识是 famount,单价字段标识是 fprice ,数量字段标识是 fqty,那么表达式就应该是这样的:famount = fprice * fqty
![](https://box.kancloud.cn/e161e265216383cb1771150c2ae07319_480x407.png)
完整的规则代码如下:
~~~
{
//规则引擎基类
"base": "/mdl/bill.rule.json",
//定义表单锁定规则
"lockRules": [
],
//定义表单可见性规则
"visibleRules": [
],
//定义表单计算规则
"calcRules": [
{ "expression": "famount=fprice*fqty" }
]
}
~~~
注意事项:
(a) 规则文件命名约定以表单ID开头,后面加上固定的后缀“rule”,比如销售订单的表单ID为 sal_order,那么规则文件命名为: sal_order.rule.json
(b) 规则文件存放的目录与表单模型文件存放的目录相同。
(c) 一般来讲,业务表单规则继承至 /mdl/bill.rule.json,基础资料规则继承至 /mdl/bd.rule.json。
(d) 表达式中的字段标识对大小写敏感,必须要和mdl模型文件中定义的字段标识一致。
(e) 编写完计算表达式后需要重新打开业务表单才能查看效果。
- 业务开发详解系列
- 基础名称概念解释
- 开发调试环境搭建
- 基础资料开发详解
- 单据开发详解
- 动态表单开发详解
- 业务报表开发详解
- 单据转换流程开发详解
- 套打功能设计详解
- K3Cloud系统集成配置详解
- 系统集成开发详解系列
- 基础介绍
- 接口设计原则
- 接口访问授权
- 数据字典介绍
- 接口调用示例
- 业务应用开发Q&A
- 项目整体介绍
- 如何锁定或解锁某个字段?
- 如何锁定或解锁某个菜单按钮?
- 如何显示或隐藏某个字段?
- 如何显示或隐藏某个菜单按钮?
- 如何实现(金额=单价*数量)这样表达式计算?
- 如何使一个视图元素(按钮,标签等)具备发起一个服务请求?
- 如何向操作中传递固定参数?
- 如何向操作中传递可变或动态参数?
- 如何让一个操作具备确认交互能力?
- 如何让一个操作具备复杂交互界面能力?
- 如何设置一个字段为必录?
- 选择基础资料,如何携带出其它字段信息
- 如何进行字段校验(手机号,邮箱,身份证)?
- 如何作一个列表式报表?
- 表头字段唯一验证