[发明专利]数据对象与状态控制逻辑分离系统和方法有效
| 申请号: | 201210479553.0 | 申请日: | 2012-11-22 |
| 公开(公告)号: | CN103019695A | 公开(公告)日: | 2013-04-03 |
| 发明(设计)人: | 乔洪昌;罗涛 | 申请(专利权)人: | 用友软件股份有限公司 |
| 主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F17/30 |
| 代理公司: | 北京友联知识产权代理事务所(普通合伙) 11343 | 代理人: | 尚志峰;汪海屏 |
| 地址: | 100094 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 数据 对象 状态 控制 逻辑 分离 系统 方法 | ||
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种数据对象与状态控制逻辑分离系统和一种数据对象与状态控制逻辑分离方法。
背景技术
在数据处理流程和功能快速变化且持续改进的情况下,用户期待在保持数据对象不变的情况下,支持更丰富的更灵活的控制逻辑实现,目前通用的实现方法有以下共同的特性:
1.使用枚举类型描述状态元数据;
2.在设计态定义数据对象所引用的状态数据;
3.通过设计态定义每种状态的控制逻辑代码,控制针对数据对象的活动操作是否可执行;
4.通过状态机等手段定义针对数据对象的活动触发的数据对象的状态变更;
5.数据对象元数据和状态控制逻辑代码,以及状态机在编译时进行关联,数据对象元数据和状态控制逻辑代码,以及状态机一般需要确定明确的对应关系。
从上述特点中可以看出,相关技术虽然在一定程度上实现了数据对象和业务逻辑的分离,提高了开发效率和用户体验。但由于依赖代码实现控制逻辑,这些技术仍存在以下一些不足:
1.数据对象和控制逻辑编程的并行开展存在限制。因为数据对象及其活动的控制逻辑依赖状态的代码在数据对象的活动开发时需要硬代码在活动内部写好,导致数据对象的活动的逻辑代码和状态元素紧密耦合,编写数据对象业务逻辑代码时,必须明确状态的控制规则,从而编写逻辑代码;而状态控制逻辑的更改,通常也需要同步修改代码文件来实现,不能很好地达到支持数据对象的控制逻辑与状态控制逻辑分离,并行实现,不产生相互影响的目的。
2.在企业管理软件中,经常会有根据不同用户定义不同的状态,状态控制逻辑和转换逻辑,现有技术在运行期间,不能很好地支持状态控制逻辑的扩展。
因此,需要一种新的数据对象与状态控制逻辑分离技术,不需要修改数据对象及其活动的逻辑代码,就可实现数据对象和活动与控制逻辑相分离的目的。
发明内容
本发明正是基于上述问题,提出了一种新的数据对象与状态控制逻辑分离技术,不需要修改数据对象及其活动的逻辑代码,就可实现数据对象和活动与控制逻辑相分离的目的。
有鉴于此,根据本发明的一个方面,提供了一种数据对象与状态控制逻辑分离系统,包括:关联单元,将所述数据对象与状态管理器中的状态数据通过绑定进行关联,所述状态数据包括状态类型以及对应于所述状态类型的控制逻辑,由状态管理器管理所述状态数据;所述状态管理器,在将针对所述数据对象执行活动时,读取所述数据对象的当前状态,根据与所述当前状态对应的控制逻辑,判断所述活动是否允许被执行,以及在接收到来自执行单元的通知时,基于所述状态数据将所述数据对象的原状态切换至目标状态,在所述状态管理器切换所述数据对象的状态后,将所述目标状态的值传送至所述数据对象,以更新所述数据对象的状态属性;所述执行单元,在判断出所述活动允许被执行时,执行所述活动,并在所述活动被执行结束后,向所述状态管理器发送通知。
通过数据绑定为数据对象和状态数据之间提供数据同步的交互途径。在数据对象元数据中指定绑定源和绑定路径,元数据被加载并创建为数据对象后,控件可根据绑定上下文自动获取绑定的数据,并在更改时同步更新绑定源。
在上述技术方案中,优选的,所述执行单元还用于在将执行所述活动时,获取所述数据对象的实例,并发出以所述实例作为参数的事件,以及在所述活动被执行结束后,发出活动完成事件;所述状态管理器还用于监听所述事件,并调用状态校验方法判断所述活动是否允许被执行,以及监听所述活动完成事件,调用状态转换方法执行状态转换过程。
在上述技术方案中,优选的,所述状态管理器还用于按照与所述活动对应的插件规范,将与所述数据对象对应的状态控制逻辑处理成一个插件,并将所述插件注册至所述活动的插件列表中,所述插件包括校验插件和状态切换插件;所述执行单元在将执行所述活动时,获取所述数据对应的实例,调用所述校验插件对所述活动进行校验,在校验通过时,执行所述活动,在所述活动执行结束时,调用所述状态切换插件,执行状态切换。
在上述技术方案中,优选的,所述执行单元还用于在所述活动内部编写状态校验方法和状态切换方法的代码,在针对所述数据对象执行所述活动时,调用所述状态管理器的状态校验方法,在校验通过时,执行所述活动,以及在所述活动执行结束时,调用所述状态管理器的状态切换方法,执行状态切换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于用友软件股份有限公司,未经用友软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210479553.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:生物质饲料制作方法
- 下一篇:一种目眩蔓荆子保健茶
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





