CN109753314A - 一种可配置的流程自动执行方法及系统 - Google Patents
一种可配置的流程自动执行方法及系统 Download PDFInfo
- Publication number
- CN109753314A CN109753314A CN201711054479.7A CN201711054479A CN109753314A CN 109753314 A CN109753314 A CN 109753314A CN 201711054479 A CN201711054479 A CN 201711054479A CN 109753314 A CN109753314 A CN 109753314A
- Authority
- CN
- China
- Prior art keywords
- affairs
- condition
- configuration file
- file
- execution
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种可配置的流程自动执行方法,包括根据业务应用中的流程,构建配置文件;配置文件中定义了流程的启动条件,并且设置了事务序列;读取配置文件,完成初始化;若启动条件满足,则执行事务序列。同时也公开该可配置的流程自动执行系统,包括配置文件构造模块、初始化模块、判断模块和执行模块。本发明根据业务应用中的流程,构建配置文件,在配置文件中定义流程的启动条件,设置事务序列,操作简单方便,同时灵活度和通用性增强;本发明通过配置文件构造模块满足不同的业务应用需求,避免重复开发,提高了工作效率。
Description
技术领域
本发明涉及一种可配置的流程自动执行方法及系统,属于电网及工业自动化监控领域。
背景技术
流程执行在多种业务应用中都是一项重要内容,这些业务存在共同特点:1)需要满足条件才能启动;2)由一系列的事务顺序执行完成。目前这些业务流程多由专用模块完成,流程启动条件及事务序列定义均固化在模块中,一旦存在需求调整,就需要对模块代码进行修改或者重新开发新的模块。随着需求的增多,模块数目也越来越多,不便于管理,开发工作量大且存在重复,不利于工作效率的提高。
发明内容
为了解决上述技术问题,本发明提供了一种可配置的流程自动执行方法及系统。
为了达到上述目的,本发明所采用的技术方案是:
一种可配置的流程自动执行方法,包括,
根据业务应用中的流程,构建配置文件;配置文件中定义了流程的启动条件,并且设置了事务序列;
读取配置文件,完成初始化;
若启动条件满足,则执行事务序列。
启动条件包括定时触发条件和文件变化触发条件;
其中,
定时触发条件:定义相邻两次流程启动的时间间隔,获取当前时间,如果与上次流程启动的时间之差不小于时间间隔,则启动流程;
文件变化触发条件:定义目标文件夹,监视目标文件夹中的文件,与上次流程启动时记录的文件进行比较,如果文件发生了变化且变化不再持续,则启动流程。
事务序列设置的内容包括事务的数目、每一事务的执行命令和执行模式。
事务的执行模式包括阻塞等候模式、阻塞退出模式和非阻塞模式;
在阻塞等候模式下,某一事务执行失败,则重复执行该事务,直到成功才执行下一事务;
在阻塞退出模式,某一事务执行失败,则退出整个流程;
在非阻塞模式,某一事务无论执行成功与否,均会执行下一事务。
读取配置文件,完成初始化的过程为,
读取配置文件,获取流程启动条件,如果是定时触发条件,则获取时间间隔,如果是文件变化触发条件,则获取目标文件夹路径;
获取事务数目,申请事物序列缓存;
按顺序逐一获取事务的执行命令和执行模式,并放入事物序列缓存。
一种可配置的流程自动执行系统,包括配置文件构造模块、初始化模块、判断模块和执行模块;
配置文件构造模块,根据业务应用中的流程,构建配置文件,配置文件中定义了流程的启动条件,并且设置了事务序列;
初始化模块,读取配置文件,完成初始化;
判断模块,判断流程的启动条件是否满足,如果满足则启动执行模块;
执行模块,执行事务序列。
启动条件包括定时触发条件和文件变化触发条件;
其中,
定时触发条件:定义相邻两次流程启动的时间间隔,获取当前时间,如果与上次流程启动的时间之差不小于时间间隔,则启动流程;
文件变化触发条件:定义目标文件夹,监视目标文件夹中的文件,与上次流程启动时记录的文件进行比较,如果文件发生了变化且变化不再持续,则启动流程。
事务序列设置的内容包括事务的数目、每一事务的执行命令和执行模式。
事务的执行模式包括阻塞等候模式、阻塞退出模式和非阻塞模式;
在阻塞等候模式下,某一事务执行失败,则重复执行该事务,直到成功才执行下一事务;
在阻塞退出模式,某一事务执行失败,则退出整个流程;
在非阻塞模式,某一事务无论执行成功与否,均会执行下一事务。
初始化模块的工作过程为,
读取配置文件,获取流程启动条件,如果是定时触发条件,则获取时间间隔,如果是文件变化触发条件,则获取目标文件夹路径;
获取事务数目,申请事物序列缓存;
按顺序逐一获取事务的执行命令和执行模式,并放入事物序列缓存。
本发明所达到的有益效果:1、本发明根据业务应用中的流程,构建配置文件,在配置文件中定义流程的启动条件,设置事务序列,操作简单方便,同时灵活度和通用性增强;2、本发明通过配置文件构造模块满足不同的业务应用需求,避免重复开发,提高了工作效率。
附图说明
图1为方法的整体示意图;
图2为构建配置文件的流程图;
图3为启动条件判断示意图;
图4为事务序列执行示意图。
具体实施方式
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
如图1所示,一种可配置的流程自动执行方法,包括以下步骤:
步骤1,根据业务应用中的流程,构建配置文件,配置文件中定义了流程的启动条件,并且设置了事务序列。
如图2所示,启动条件包括定时触发条件和文件变化触发条件。如果是定时触发条件启动,则需定义相邻两次流程启动的时间间隔,单位为秒;如果是文件变化触发条件启动,则需定义目标文件夹。
事务序列设置的内容包括事务的数目、每一事务的执行命令和执行模式;其中,事务的执行模式包括阻塞等候模式、阻塞退出模式和非阻塞模式。
步骤2,读取配置文件,完成初始化。
具体过程为,
1)读取配置文件,获取流程启动条件,如果是定时触发条件,则获取时间间隔,如果是文件变化触发条件,则获取目标文件夹路径;
2)获取事务数目,申请事物序列缓存,缓存大小为事务的数目(N)乘以单个事务大小;
3)按顺序逐一获取事务的执行命令和执行模式,并放入事物序列缓存。
步骤3,判断启动条件是否满足,若不满足,则进入下次启动条件判断;若启动条件满足,则执行事务序列。
如图3所示,如果是定时触发条件启动,则获取当前时间,如果与上次流程启动的时间之差不小于时间间隔,则启动流程,并记录本次流程启动的时间,否则进入下次启动条件判断。
如果是定时触发条件启动,则监视目标文件夹中的文件,与上次流程启动时记录的文件进行比较,如果文件发生了变化且变化不再持续,则启动流程,并记录此时目标文件下的文件信息,否则进入下次启动条件判断。
启动条件满足后,各事务按照执行命令和执行模式执行,如图4所示,以某一事务I为例,其执行命令为CMD_I,执行模式为MODE_I,对执行模式MODE_I进行判断:
如果MODE_I为阻塞等候模式,执行命令CMD_I返回成功,则执行事务I+1;返回失败,则重复执行事务I,直到成功才执行事务I+1;
如果MODE_I为阻塞退出模式,执行命令CMD_I返回成功,则执行事务I+1;返回失败,则退出整个流程;
如果MODE_I为非阻塞模式,执行命令CMD_I,无论成功与否,均会执行事务I+1。
与上述方法对应的系统包括配置文件构造模块、初始化模块、判断模块和执行模块。
配置文件构造模块:根据业务应用中的流程,构建配置文件,配置文件中定义了流程的启动条件,并且设置了事务序列。
初始化模块:读取配置文件,完成初始化。
判断模块:判断流程的启动条件是否满足,如果满足则启动执行模块;
执行模块:执行事务序列。
上述方法根据业务应用中的流程,构建配置文件,在配置文件中定义流程的启动条件,设置事务序列,操作简单方便,同时灵活度和通用性增强;上述系统通过配置文件构造模块满足不同的业务应用需求,避免重复开发,提高了工作效率。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种可配置的流程自动执行方法,其特征在于:包括,
根据业务应用中的流程,构建配置文件;配置文件中定义了流程的启动条件,并且设置了事务序列;
读取配置文件,完成初始化;
若启动条件满足,则执行事务序列。
2.根据权利要求1所述的一种可配置的流程自动执行方法,其特征在于:启动条件包括定时触发条件和文件变化触发条件;
其中,
定时触发条件:定义相邻两次流程启动的时间间隔,获取当前时间,如果与上次流程启动的时间之差不小于时间间隔,则启动流程;
文件变化触发条件:定义目标文件夹,监视目标文件夹中的文件,与上次流程启动时记录的文件进行比较,如果文件发生了变化且变化不再持续,则启动流程。
3.根据权利要求2所述的一种可配置的流程自动执行方法,其特征在于:事务序列设置的内容包括事务的数目、每一事务的执行命令和执行模式。
4.根据权利要求3所述的一种可配置的流程自动执行方法,其特征在于:事务的执行模式包括阻塞等候模式、阻塞退出模式和非阻塞模式;
在阻塞等候模式下,某一事务执行失败,则重复执行该事务,直到成功才执行下一事务;
在阻塞退出模式,某一事务执行失败,则退出整个流程;
在非阻塞模式,某一事务无论执行成功与否,均会执行下一事务。
5.根据权利要求3所述的一种可配置的流程自动执行方法,其特征在于:读取配置文件,完成初始化的过程为,
读取配置文件,获取流程启动条件,如果是定时触发条件,则获取时间间隔,如果是文件变化触发条件,则获取目标文件夹路径;
获取事务数目,申请事物序列缓存;
按顺序逐一获取事务的执行命令和执行模式,并放入事物序列缓存。
6.一种可配置的流程自动执行系统,其特征在于:包括配置文件构造模块、初始化模块、判断模块和执行模块;
配置文件构造模块,根据业务应用中的流程,构建配置文件,配置文件中定义了流程的启动条件,并且设置了事务序列;
初始化模块,读取配置文件,完成初始化;
判断模块,判断流程的启动条件是否满足,如果满足则启动执行模块;
执行模块,执行事务序列。
7.根据权利要求6所述的一种可配置的流程自动执行系统,其特征在于:启动条件包括定时触发条件和文件变化触发条件;
其中,
定时触发条件:定义相邻两次流程启动的时间间隔,获取当前时间,如果与上次流程启动的时间之差不小于时间间隔,则启动流程;
文件变化触发条件:定义目标文件夹,监视目标文件夹中的文件,与上次流程启动时记录的文件进行比较,如果文件发生了变化且变化不再持续,则启动流程。
8.根据权利要求7所述的一种可配置的流程自动执行系统,其特征在于:事务序列设置的内容包括事务的数目、每一事务的执行命令和执行模式。
9.根据权利要求8所述的一种可配置的流程自动执行系统,其特征在于:事务的执行模式包括阻塞等候模式、阻塞退出模式和非阻塞模式;
在阻塞等候模式下,某一事务执行失败,则重复执行该事务,直到成功才执行下一事务;
在阻塞退出模式,某一事务执行失败,则退出整个流程;
在非阻塞模式,某一事务无论执行成功与否,均会执行下一事务。
10.根据权利要求8所述的一种可配置的流程自动执行系统,其特征在于:初始化模块的工作过程为,
读取配置文件,获取流程启动条件,如果是定时触发条件,则获取时间间隔,如果是文件变化触发条件,则获取目标文件夹路径;
获取事务数目,申请事物序列缓存;
按顺序逐一获取事务的执行命令和执行模式,并放入事物序列缓存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711054479.7A CN109753314B (zh) | 2017-11-01 | 2017-11-01 | 一种可配置的流程自动执行方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711054479.7A CN109753314B (zh) | 2017-11-01 | 2017-11-01 | 一种可配置的流程自动执行方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109753314A true CN109753314A (zh) | 2019-05-14 |
CN109753314B CN109753314B (zh) | 2021-08-27 |
Family
ID=66397733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711054479.7A Active CN109753314B (zh) | 2017-11-01 | 2017-11-01 | 一种可配置的流程自动执行方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109753314B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275768A (zh) * | 2019-06-28 | 2019-09-24 | 北京字节跳动网络技术有限公司 | 数据处理方法、装置及电子设备 |
CN117252309A (zh) * | 2023-11-15 | 2023-12-19 | 青岛海信信息科技股份有限公司 | 一种用于办公事务流程的自动化定时执行方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1688979A (zh) * | 2002-06-20 | 2005-10-26 | 国际商业机器公司 | 用于事务流水线分解的方法和系统 |
CN101155370A (zh) * | 2006-12-08 | 2008-04-02 | 中兴通讯股份有限公司 | 一种移动通讯系统多流应用中事务的串行处理方法及系统 |
CN101216906A (zh) * | 2007-12-29 | 2008-07-09 | 中国建设银行股份有限公司 | 一种流程控制方法及一种流程引擎 |
CN102385734A (zh) * | 2011-11-10 | 2012-03-21 | 中国工商银行股份有限公司 | 一种实现柜面联机事务处理的系统及方法 |
CN102810070A (zh) * | 2012-07-16 | 2012-12-05 | 福建富士通信息软件有限公司 | 高性能业务能力封装流程引擎及其流程控制方法 |
CN104077669A (zh) * | 2014-07-23 | 2014-10-01 | 中国科学院自动化研究所 | 一种计算机工作流的自主定制与驱动执行的通用方法 |
CN105306273A (zh) * | 2015-11-10 | 2016-02-03 | 中国建设银行股份有限公司 | 流程配置方法及装置 |
-
2017
- 2017-11-01 CN CN201711054479.7A patent/CN109753314B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1688979A (zh) * | 2002-06-20 | 2005-10-26 | 国际商业机器公司 | 用于事务流水线分解的方法和系统 |
CN101155370A (zh) * | 2006-12-08 | 2008-04-02 | 中兴通讯股份有限公司 | 一种移动通讯系统多流应用中事务的串行处理方法及系统 |
CN101216906A (zh) * | 2007-12-29 | 2008-07-09 | 中国建设银行股份有限公司 | 一种流程控制方法及一种流程引擎 |
CN102385734A (zh) * | 2011-11-10 | 2012-03-21 | 中国工商银行股份有限公司 | 一种实现柜面联机事务处理的系统及方法 |
CN102810070A (zh) * | 2012-07-16 | 2012-12-05 | 福建富士通信息软件有限公司 | 高性能业务能力封装流程引擎及其流程控制方法 |
CN104077669A (zh) * | 2014-07-23 | 2014-10-01 | 中国科学院自动化研究所 | 一种计算机工作流的自主定制与驱动执行的通用方法 |
CN105306273A (zh) * | 2015-11-10 | 2016-02-03 | 中国建设银行股份有限公司 | 流程配置方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110275768A (zh) * | 2019-06-28 | 2019-09-24 | 北京字节跳动网络技术有限公司 | 数据处理方法、装置及电子设备 |
CN117252309A (zh) * | 2023-11-15 | 2023-12-19 | 青岛海信信息科技股份有限公司 | 一种用于办公事务流程的自动化定时执行方法 |
CN117252309B (zh) * | 2023-11-15 | 2024-02-13 | 青岛海信信息科技股份有限公司 | 一种用于办公事务流程的自动化定时执行方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109753314B (zh) | 2021-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103279840B (zh) | 基于动态语言与事件处理机制的工作流引擎实现方法 | |
CN1959724B (zh) | 泛在计算环境中工作流上下文信息的获取方法和系统 | |
CN109495308A (zh) | 一种基于管理信息系统的自动化运维系统 | |
CN110348441A (zh) | 增值税发票识别方法、装置、计算机设备及存储介质 | |
CN103425585A (zh) | 一种osgi集成测试方法 | |
CN109359945A (zh) | 一种工人工资发放方法 | |
CN103593232B (zh) | 一种数据仓库的任务调度方法及装置 | |
CN108298397A (zh) | 一种基于电梯物联网的电梯维保监测方法及监管平台 | |
CN109753314A (zh) | 一种可配置的流程自动执行方法及系统 | |
CN106354515B (zh) | 基于模型的SystemC代码生成系统 | |
CN104346839B (zh) | 一种基于局域网的员工电子考勤系统 | |
CN110471945A (zh) | 活跃数据的处理方法、系统、计算机设备和存储介质 | |
CN108241529A (zh) | 薪资计算方法、应用服务器及计算机可读存储介质 | |
CN105607902A (zh) | 基于构件模型的系统可视化设计及代码生成系统及方法 | |
CN104050193B (zh) | 生成报文的方法和实现该方法的数据处理系统 | |
CN102256226B (zh) | 维护保养信息处理方法和系统 | |
CN106843818B (zh) | 一种业务模型生成方法及装置 | |
CN109865292A (zh) | 一种基于游戏引擎的游戏资源构建方法和装置 | |
CN106547861A (zh) | 一种智能管理机器节点的数据库的方法及装置 | |
CN103077080B (zh) | 基于高性能平台的并行程序性能数据采集方法及装置 | |
CN104992271B (zh) | 一种不同流程实例协同运行的系统及其实现方法 | |
CN105426453A (zh) | 一种通过配置项控制日志输出等级的方法 | |
CN110334001A (zh) | 一种批量自动生成回声测试的方法和装置 | |
CN105405220A (zh) | 一种自动化测试的方法及装置 | |
CN113793213B (zh) | 一种异步信贷风控断点续作的决策方式的实现方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |