`
eworkflow
  • 浏览: 213671 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

工作流集成第三方aspx页面

 
阅读更多

通常工作流软件系统都会有自己的表单工具,能方便的可视化的设置出业务表单。但是很多客户在做工作流软件产品调研时,都会很关心工作流系统是否能方便的集成第三方的表单。大概是对自定义表单工具的能力不信任,也或者是对表单工具的不熟悉,抱着万一自定义表单工具不能实现自己的要求哦,还可以自己写代码来实现。

 

当然工作流软件产品中包含的表单工具,是能应付所有的要实现的需求的。可视化的设置功能达不到,还可以通过编程的方法来达到,因为表单工具本身也是一个开发工具,用传统的dotnet或java能实现的,表单工具也一样能实现。

 

如果达不到那就是表单工具的问题了,象我们的eform是完全可以达到的,eform封装了很多业务模块实现的通用功能和控件,常见的录入方式,都可以通过界面配置来完成,当需求特殊,不具通用性,eform没有提供时,可以通过代码来实现。eform本身也是一个类似jquery的工具,大量运用了ajax,并封装了大量的函数,代码实现的时候也很得心应手。就象jquery一样,如果要自定义代码,需要熟悉一下框架的一些基本函数,熟悉了,就很快了。但毕竟需要自定义代码的地方不多。

 



 

eform表单设计器

 

当客户觉得自己的应用还是够复杂,需要自己写实现模块的时候,工作流系统也需要提供集成第三方页面的方法。集成第三方的页面,可以是htm,jsp,aspx等。用dotnet的通常就是aspx页面了。

在流程设计器中,需要能将aspx页面挂接到流程的节点上,当流程运行到此节点时,能打开关联的aspx页面。这是最基本的要求。

 

挂接到流程中的aspx页面,要实现两个方面的基本功能,首先要做好自己份内的事,实现业务录入,界面编辑,保存用户录入的数据。另一方面需要执行流程的节点,使得流程得到递进。

 

业务信息的录入,保存按应用系统的mvc方式来实现。执行流程的递进,就需要调用流程引擎对外提供的api接口了。

如下面这样一个请假的流程:



 

在集成aspx页面的时候,需要按照如下过程进行:


在流程定义的时候,节点上挂接aspx页面,同时,加上?1=1 ,在流程引擎打开这个页面时,会将流程的相关信息按&关键字=值 这样的方式拼接到url后面。在aspx页面中按关键字获取这些流程相关的信息,为表单提交时,执行流程递进做好准备。



 


启动流程,运行的url如下:
../aspx_dj/leave_init.aspx?wfName=wf_leave_init_aspx&wfVersion=1&initActionId=4960&actionId=4926

打开leave_init.aspx页面,后面的参数标明业务流程名称,版本。初始化动作id,和第一个动作节点id

 


aspx业务表单在提交的时候,做好了业务数据的提交之后,再调用流程引擎的api执行流程节点的动作,使得流程得以递进。


集成的api接口函数调用代码如下:



 

业务数据的提交,和流程的动作执行,应该在一个事务中,保证整个流程的事务一致。

 

 

 

 

 

标签: java工作流, 流程设计器, 自定义工作流, 自定义表单, 工作流引擎, dotnet工作流引擎, .net工作流系统, 工作流软件, 工作流软件系统, 工作流软件产品, web自定义表单

  • 大小: 80.6 KB
  • 大小: 14.1 KB
  • 大小: 64 KB
  • 大小: 93.7 KB
1
0
分享到:
评论
3 楼 shige19 2013-11-29  
工作流中集成页面:
1 流程环节绑定页面url;
2 页面处理中调用流程的api
2 楼 eworkflow 2011-10-24  
daiqunbiao 写道
楼主上面说了业务数据和流程的递交在同一个事务当中处理,如果业务数据和流程数据在不同数据库中,如何保证数据事务的一致性呢?


业务数据和流程的数据肯定要在同一个数据库中。如果确实不在同一个数据库中,也可以利用oracle的同义词等放到同一个数据源中。
1 楼 daiqunbiao 2011-10-24  
楼主上面说了业务数据和流程的递交在同一个事务当中处理,如果业务数据和流程数据在不同数据库中,如何保证数据事务的一致性呢?

相关推荐

    驰骋工作流引擎源码

    D:\ccflow\DLL -- 第三方组件中需要调用dll. D:\ccflow\Documents - 文档 D:\ccflow\VisualFlow --bs工作流程引擎前台. D:\ccflow\VisualWorkFlowServices - 流程服务程序. D:\ccflow\VisualFlowWebDesigner - ...

    java开源包1

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包11

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包2

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包3

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包6

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包5

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包10

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包4

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包8

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包7

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包9

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    java开源包101

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    Java资源包01

    同时,任何第三方都可以使用OAUTH认证服务,任 何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间...

    JAVA上百实例源码以及开源项目源代码

    第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例  各种EJB之间的调用源码...

    JAVA上百实例源码以及开源项目

    第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动多个客户端 实现群聊。 浮动的广告 嵌套在html中 各种EJB之间的调用示例 7个目标文件 摘要:Java源码,初学实例,EJB调用实例  各种EJB之间的调用源码...

Global site tag (gtag.js) - Google Analytics