jxTMS+进销存--业务过程

44 篇文章 0 订阅
23 篇文章 0 订阅

本文讲解jxTMS中的业务过程,整个系列的文章请查看:jxTMS+进销存:概述

现代企业的管理遵循分工协作、分权制衡的基本原则,这一思想反映到管理信息系统上最典型的就是流程。但流程有一个比较麻烦的地方,流程启动后,其所涉及到的业务数据【代表的是业务处理对象,如销售的客户订货明细、报销的费用明细等】是一成不变的。但有的业务环节却需要批处理,否则效率太低。

也就是说,流程是一事一理,但有的业务环节却需要按自己的节奏、粒度进行作业,这就会造成不同业务处理环节间的脱节。针对这个问题,jxTMS又增加了业务过程来解决。

和流程一样,业务过程也是跨岗位、跨专业的过程性推动部件。不过和流程关注的是同一任务在不同角色间的推动不同,业务过程是部门/功能模块间的业务推动。

而从信息管理系统的角度看,流程是角色间任务信息的流转,业务过程是功能模块间业务数据的流转。

也就是说,从管理角度看,业务过程是部门间过程性作业的推动;从管理系统角度看,业务过程是功能模块间过程性数据的流转。

理解了这些,业务过程其实就非常简单了:就是一个通过标准接口进行的数据交接机制。

业务过程组件

通过上述的讨论,我们可知业务过程包括两个部分:

1、业务过程流转定义

参考流程的定义与实现,业务过程的定义与实现是非常简单的:

@myModule.bizProcess('psi')
def bpPSI(self):
    '''
        node 销售 capa=psi.sales ;
        node 备货 by 销售 capa=psi.inventory ;
        node 通知收货 by 备货 capa=psi.inventory, func=informDeliver ;
        node 发货 by 通知收货 capa=psi.inventory ;
        node over by 收货 capa=psi.main;
    '''

上述用bizProcess修饰的函数,定义了一个名为psi的业务过程,包括了销售、备货、通知收货、发货以及最后默认结束的over等环节。非常简单,只需就【通知收货】节点加以说明,其是交接给函数【informDeliver】处理,处理完毕后自动交接给【发货】节点,而其它节点都是需要工作人员手工作业,并确认本环节作业完毕的。

2、业务各环节的标准接口

@myModule.Interface('psi', '备货'.decode('utf-8'))
def bpPSI_stockUp(self, db, ctx,active,params):
    ......

上述用新引入的修饰符Interface修饰的函数,指示该函数用于psi业务过程的备货节点处理,其中active是来自哪个节点【这里是:销售】,params是销售节点传递出的json型业务数据。

推动业务过程的流转

定义好业务过程后,当本节点处理完毕需转交下一节点继续处理时,执行下述命令即可:

bizProcess.over(db,ctx,self,本节点名,params)

params根据约定,应是一个array型的json数组,其中每一行代表一个bizDataItem对象,该对象的BizProcessID属性指示了相应的业务号,如果存在多个业务号,则按业务逐一转交,以支持本业务中该节点的批处理能力。

目前jxTMS已经开放个人注册试用,欢迎大家注册试用:

注册到jxTMS

下面的系列文章讲述了如何用jxTMS开发一个实用的业务功能:

如何用jxTMS开发一个功能

下面的系列文章讲述了jxTMS的一些基本功能:

jxTMS的HelloWorld

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值