java工作流详解

article/2025/9/30 9:23:26

什么是工作流?

工作流:两个或两个以上的人,为了共同的目标,连续的以串行或并行的方式去完成某一业务。

业务:工作流所指业务涵盖了与经营相关的活动。

串行或并行:业务中的步骤也许以一步接着一步的方式进行,我们称之为串行;或者由不同的人或组合根据不同的情况处理,我们称之为并行。

两个或两个以上的人:如工作流的名称所表达的含义,一个人处理的业务不称其为工作流,只有任务从一个人"流"向另一个人的时候,才有工作流。

共同的目标:个体参与工作流必须是为了同一个工作目标。如果个体处于两个相互独立的项目之中,不会产生工作流。

由于上述定义也许包含了物质生产和产品,所以我们以"业务工作流"来强调所讨论的不仅仅是制造业,而是业务的自动化。

将工作进程结构化,创建工作流过程如下:

实现审批节点自定义

可自定义流程的审批走向以及处理人员,支持在任何节点进行加审核或减审核,

可以进行流程状态控制发布与停止。

实现审批关系自定义

可根据实际业务场景,将相关审批人员设置为审核关系或依次逐个处理。

实现自动生成流程图

一旦设置完成后,系统将在当条数据流程图,便于前台用户进行流程跟踪

 

注意步骤之间的先后次序。

如部分步骤是基于条件的,那就需要根据条件的不同区分不同的步骤。

画出流程图,定义各个步骤的职能和参与者。

创建完成子任务的各个步骤的表格、文件和详细指示。

如你所见,工作流包括序列化的步骤和进程。任务按实现规定的规则和条件从一个步骤"流"向另一个步骤。

工作流的问题

在工作流自动化出现以前,所有的工作流都是通过手工实现的。较典型的是某项任务中的步骤要求参与者批阅文档或表格组成的文件。完成批阅及填写完表格中的相关内容后,文件被人工地传到下一步的执行者。需要对进程的参与者进行关于进程路由的培训,否则文件就会留在文件夹里得不到处理。对任务执行情况的监控必须四处打听究竟完成到了哪一步。没有简单的方法去了解任务是否拖延或文件是否丢失,也无法了解这种流程的成本到底是多少。手工工作流的处理方法存在如下的问题:

高度依赖纸张

劳动强度大

流程不严密,任务执行不易贯彻

无法对流程的过程进行监控

无法度量进程时间和统计进程的成本

工作流基本概念: 工作流的图形化

工作流产品提供一种图形化的方法来描述和实现工作流进程。进程的每个步骤以一个图形化的图标来表示。通过对这些图标的连接,设计者就能够描述步骤之间的关系及路由。对每个步骤而言,设计者能够指定该步骤用户参与进程的界面和所需完成的任务所需的电子表格。

 

 

工作流解决方案与传统管理软件的关系

传统的管理软件注重解决企业应用层现存的问题(例如提高企业的资源配置率或提高单一员工的生产效率)。例如:EXCEL可以提高员工画表格的效率、财务软件可以规范财务人员的工作并提高帐目查询的效率、CRM可以规范客户管理从而使客户资源掌握在公司手中而不是被一部分业务人员把持并提高客户响应时间、ERP解决的是如何配置企业资源:使企业的人力资源、财力资源和物资资源能够根据业务的需求实现最大化配置。一个好的传统软件如果希望能自动化地在整个企业中应用起来,必须有一个强大的逻辑层,用以解决信息传递的逻辑判断和自动流转,这个时候就需要workflow的平台。

workflow关注的是如何缩短流程闲置时间,从而提高企业的业务处理能力并使企业能够关注于真正对企业有意义的增值业务上。从建立企业神经系统的角度也许更能理解两者的区别。

JNPF工作流程监控优势

流程监控使用与查看所有人申请表以及审批的流程进度跟踪,显示当前流程状态,可以对正在审批、审批通过、审批驳回等状态进行查看详细信息,可以操作终止当条流程功能操作;当在流程监控里面可以查看到整个公司日常申请单。

 

所以说:

1、workflow和传统管理软件不是同一种软件,不具可比性;

2、workflow对于已经有传统管理软件的企业的作用非常明显,可以籍此平台整合企业的各种应用系统,使之成为一个完整的企业级应用,也就是通常所说的EAI。

3、具备workflow功能的管理软件(workflow与传统管理软件的结合)对于传统管理软件有绝对的优势;

4、workflow可以根据企业的需要开发解决信息传递问题的流程以及帮助企业开发与现有应用系统的接口

工作流自动化的意义

减少滞后时间

很多业务进程遵循90/10规则:典型的业务进程有90%的时间是"滞后"的。时间都被消耗在了任务的闲置、排队等待、发送过程及状况追踪上了。这些时间都被白白浪费掉了,对业务而言是无价值的。只有10%左右的时间被用于"进程处理"。生产力控制软件有助于降低进程处理的时间。然而,即使进程处理时间降低了50%,对整个进程时间的影响也只有5%。工作流自动化瞄准的是滞后时间。如果滞后时间减少50%,整个进程时间就能减少45%。这就是工作流自动化为什么是互联网络时代提高企业工作效率的关键。

提高生产率——可通过下述方式提高生产率

通过集中处理任务(客户端)减少任务时间;

减少纸张工作和纸张的传递;

加速信息流并通过连接数据库电子表单的方式减少出错;

根据业务逻辑关系自动计算和传递数据给需要数据的人;

追踪并组织所有的任务及所有参与工作流进程的个体,如任务处理延迟,则会自动发出提醒;

报告和文档自动更新;

减少对文书人员的依赖并最大限度地释放现有资源;

重点处理增值业务--增值业务是现代组织的心脏。所有企业应当重点处理的是那些和企业方向相关的业务,以及如何优化这些流程使之具备竞争优势。

追踪业务进程

通过工作流自动化的软件,可以实现以图形化的方式对业务进程追踪,而不再需要通过电话、贴标签或其它的手工方式来确定例如采购订单、索引需求等等流程到底进行到了哪一步。

监测效率

如果无法对重要的工作流程进行监测,就无从谈及控制和提升。有些工作流自动化系统提供每一个流程的统计信息,包括了每一个步骤的时间和成本。通过这一功能,就有可能非常方便地实现流程的最优效果。

减少纸张消耗

很多公司每年花费在打印报表和复印上的办公纸张消耗费用动则数万元。而通过工作流自动化的改造能向"无纸办公"时代迈出坚实的一大步。而使原有表单的电子化,企业又可以节约很大一部分打印和存储的费用。北美的Winbond Electronics Corporation通过应用工作流自动化平台,短短四个月减少了70%的纸张消耗,大大节约了开销。


http://chatgpt.dhexx.cn/article/cXQlDMNO.shtml

相关文章

Java开源工作流框架对比

什么是工作流? 工作流,是指“业务​过程的部分或整体在​计算机应用环境下的自动化”。是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。 在计算机中,工作流属于计算机支持的协同工作(CSCW)的一部分。 工作流…

极简 Java 工作流概念入门

1. 为什么需要工作流 假设我有一个请假需求,流程如下: 请假可以提交给我的上司,上司可以选择批准或者拒绝,无论批准还是拒绝,都会给我一个通知。 这个流程比较简单,我们很容易想到解决方案,不…

Java工作流详解(附6大工作流框架对比)

目录 1.什么是工作流 2.工作流应用场景 3.工作流实现方式 4.有哪些工作流框架? 5.1.Activiti6. 2.Flowable7. 3.Camunda8.4.jBPM9. 5.osworkflow,6.jflow. 10.工作流框架对比 什么是工作流工作流(Worklow) 工作流是对工作流程及其各操作步骤之间业务规则的…

smalldatetime类型

1、MS Sql Server 的smalldatetime 与datetime类型的区别 原来数据库字段为smalldatetime类型, update table set column 11:59:30 发现commit后db中的值为12:00:00 update table set column 11:59:29 发现commit后db中的值为11:59:00 原来smalldatetime是不存储秒…

SQL Server中smalldatetime的日期范围为何是[1900-01-01,2079-06-06]

本文目录列表: 1、SQL Server中的基准日期 2、smalldatetime的日期范围 3、smalldatetime的日期范围和无符号2字节整数的关系 4、总结语 5、参考清单列表 SQL Server中的基准日期 SQL Server 中针对datetime和smalldatetime这两个日期时间数据类型提供一个基准日期&…

smalldatetime mysql_SQL 中 date 与datetime的区别

潇潇雨雨 我们看看这几个数据库中(mysql、oracle和sqlserver)如何表示时间mysql数据库:它们分别是 date、datetime、time、timestamp和year。date :“yyyy-mm-dd”格式表示的日期值 time :“hh:mm:ss”格式表示的时间值 datetime:…

SQL datetime和smalldatetime区别

datetime 存储大小8个字节,精确到分后的3为小数,日期范围从1753 年 1 月 1 日到 9999 年 12 月 31 日;而 smalldatetime存储大小为4个字节,精确到分,日期范围从1900 年 1 月 1 日到 2079 年 6 月 6 日。 参考 http://m…

170406回顾-SQL Server的smalldatetime类型比较

在比较SQL Server的类型为smalldatetime字段时出现下面的错误:将 expression 转换为数据类型 smalldatetime 时出现算术溢出错误 正确的比较方法如下:将long型转换为时间格式的字符串,再与smalldatetime类型的字段比较 SELECT * FROM tablename WHERE EditFlag > 2017/…

【SQL Server】将字符串转换为 smalldatetime 数据类型时失败

如下图,我在执行下列语句时遇到了“将字符串转换为 smalldatetime 数据类型时失败”的报错 然后去搜了一下,原来是存储过程的问题,我看的是其他博主的解答(但是还没有按照博主的方法实践过),内容详情有需要的自己去搜一…

android笔记1(activity跳转)

1.利用Android studio创建一个新项目,项目结构如下。 2.创建一个新的activity,用于跳转。 3.修改两个activity的布局,主activity中有一个输入文本框和一个按钮,实现点击按钮发送文本框的内容到第二个activity。第二个activity中有…

Activity 跳转的生命周期变化

1)Activity1跳转到Activity2的生命周期流程 1.Activity1启动:Activity1: onCreate()Activity1: onStart()Activity1: onResume()2.点击按钮跳转到Activity2:Activity1: onPause()Activity2: onCreate()Activity2: onStart()Activity2: onResume()Activit…

android activity跳转生命周期,Android中从一个Activity跳转到另一个Activity所经历的生命周期........

凡是Android开发人员都知道“Activity”是非常重要的;对其该“Activity”生命周期相信大家也比较熟悉了。 这篇文章主要探讨的是“从一个Activity启动跳转到另一个Activity中,所经历的生命周期中的过程” 实例: 1、MainActivity 启动 Secon…

Android开发之Activity(实现Activity跳转)

文章目录 基本框架新建activity实现activity跳转 基本框架 首先,每当我们新建一个APP工程,AS都会默认为我们创建一系列文件,比如MainActivity.java,该activity就是用户打开APP时默认弹出的activity,且该类一定要继承自…

activity跳转

1. 显示跳转 <Buttonandroid:layout_width"wrap_content"android:layout_centerHorizontal"true"android:layout_marginTop"20dp"android:text"页面跳转"android:onClick"intentClick"android:layout_height"wrap_c…

Android activity跳转使用详解

画面就是活动卡片,就是activity 继承 AppCompatActivity 的才是activity,否则就是一个普通的java类 案例:实现activity跳转 一 步骤 step1 new一个新的activity step2 看一下AndroidManifest.xml是否配置了新的activity step3 在MainActivity.java 里添加点击事件,跳转到acti…

Android Activity跳转

实现点击按钮&#xff0c;发送消息并跳转到另一个Activity MainActivity添加SendMessage方法 const val EXTRA_MESSAGE "com.example.myfirstapp.MESSAGE"class MainActivity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super…

Activity跳转和Intent传值

Activity跳转和传值 1.重点内容 1.重点内容 Activity之间的跳转及数据传递&#xff08;如何跳转&#xff1f;如何返回&#xff1f;&#xff09;使用Intent在Activity之间传递数据&#xff09;&#xff08;单向和双向&#xff1f;&#xff09;回传数据&#xff08;怎么回传和…

android跳转界面动画,Android Activity跳转动画效果

Activity的跳转动画在5.0的时候做了一个重大的突破,下面来看一下吧 1.5.0之前的overridePendingTransition 相信大家对OverridePendingTransition还是很熟悉的,使用方法也是很简单就是 //fade_in是第二个界面的进入动画,fade_out是第一个界面退出动画,不想动画传入0 overri…

Activity之间跳转实现--安卓作业2

一.要求分析 目前已经利用adapter实现了将数据传输recycleview界面。这次作业主要是利用intent传递参数并实现activity之间的跳转 1.在Adapter中的内部类viewholder中设置一个监听&#xff0c;用于recyclerview中每一个item myviewholder.textView.setOnClickListener(new …

Activity的三种跳转

一个界面跳转到另一个界面&#xff0c;这就Activity的跳转。我们在开发中常见的跳转有三种。普通跳转、有返回值的跳转、透传跳转。我们先来看一种。 1 . Activity的普通跳转&#xff08;传值跳转&#xff09; 这个跳转是最简单的 Intent intentnew Intent(); intent.setCla…