在线案例
我们提供了一些示例流程,方便第一次 了解 AgileBPM 的朋友尽快掌握一些实施技巧
可以访问在线 test环境,或者复制只读 demo数据库 : IP:47.106.139.29 ,端口:3306,用户名密码 demo/demo
(根据自己表单不同选择正确的案例库)
业务对象案例
业务对象支持 任意数据结构,N 层,基本上常见业务需求均能实现。
一对一关系业务对象特殊【案例】
如: 订单 - 客户 表如下:
order 表字段: id , name , no , customerId
customer 表字段: id ,name , phone , address ….
我们希望 订单表单展示很多 客户信息,并且在某些节点需要修改客户信息 如何配置业务对象呢?
- order 作为主表, customer 作为 子表
- 关系类型:【一对一】
- 外键配置:【customer表的ID - 子表字段对应父实例外键 - order 表的 customerId 】
注:外键对应的字段不一定是主键,也可以是某个唯一字段,比如 订单编号之类
外键配置业务对象外键的配置尤为重要,在一对一关系中,为了适应更多场景,外键可以放在 主表中,也可以放在子表中
如上案例,外键在主表中,若外键在子表中则为 customer 表的 orderId - 子表外键对应父实例字段
但是一对多场景,外键必须在主表中!
而多对多 则通过中间表作为桥梁来连接,详细请看【订单客户多对多】 业务对象案例,也有对应的流程案例
表单案例
任意数据结构的业务对象均支持直接生成表单,并且支持自定义的样式模板,支持常见的表单控件、以及特殊场景的表单组件
表单函数计算【案例】
参考 报销申请 表单,表单涉及了
日期比较:显示日期可选范围的配置
日期计算:计算两个日期字段 相差天数、月数、小时、
函数统计: 计算子表某一列值的合计,统计子表所有字段的合计,总计,平均值等等
选择已存在的子表记录填充表单【案例】
以上面 一对一关系的订单客户为例,
订单通过对话框选择客户后,填充到表单中,我们不希望系统新增一条客户,那么怎么处理呢?
这时候就可以使用自定义对话框了,自定义对话框可以快速配置一个客户信息的数据来源,当我们选择客户信息后可以直接填充到表单对应的字段中(均配置形式实现)
然后这时候务必注意,返回值必须带上客户的ID
这样,流程提交后,关于这条子表数据会执行更新动作,而不是创建!
TAB 页表单【案例】
tab 页形式展示不同信息块,可以在表单编辑源码模式下实现,或者使用商业版布局功能。
流程案例
流程表单权限灵活运用【案例】
请参考 “demo” 流程 ,该流程展示了不同节点 字段级的权限控制,请注意每个节点表单,以及表单权限的配置情况!
流程分支复杂场景【案例】
请参考 “行政采购三方比价” 流程,该流程已经将分支运用的淋漓尽致了,
- 不同意见的分支判断 : 部门审核节点后的分支
- 业务数据判断分支走向 :大多分支均使用这种形式决策走向。
URL 表单 【案例】
请参考 URL表单 流程,该流程是以 demo模块为案例配置的,
使用demoEdit.html
为表单, DemoManagerImpl.saveDemoJson(ActionCmd actionCmd)
为表单处理器,详情 可以自行查看源码
请注意案例流程表单的配置情况,可以参考 流程配置一文中关于 url表单的描述
补充
如果有比较针对性的场景的案例、可以提出需求,我们来更新该文档、以及案例库!