工作流类型简介
2009-01-14 09:53
190 查看
控制流程类型活动
Code活动:执行关联的代码,关键属性“ExecuteCode”。
Sequence:允许按顺序执行一组Activity。
IfElse:根据指定的条件执行包含的活动。
While:按指定的迭代次数执行包含的Activity。
Policy:根据一组关联的规则执行操作。
ConditionedActivityGroup:根据关联的事件/条件执行包含的Activity。只能在满足指定条件后,才会执行包含的Activity。
Replicator:通过创建指定数量的复制实例来执行包含的Activity。
SynchronizationScope:在同步域中顺序执行所包含的Activity。
容器类型的符合活动,它可以为每个分支设置一个“排他”的标记“SynchronizationHandles”。
事件类型活动
HandleExternalEvent:允许在工作流中接收事件。
依赖外部来触发事件的,
CallExternalMethod:从工作流中调用外部方法。
Listen:允许根据指定的延迟时间或事件执行所包含的Activity。
此活动每条分支之间都是平行关系,只要有一个分支监听到事件,其他分支就都不会被执行。
分支与分支之间是具有“排他”性的。此活动每条分支上的第一个子活动一定为事件类型的活动。
Delay:将执行延后指定的一段时间。
事件类型活动,由自身来触发事件。
该活动可以触发工作流的“WorkflowIdled”事件,使工作流进入“idle”状态。
EventHandlingScope:对子Activity的执行启用事件处理。
容器内的活动,每个分支都是由EventDriven容器类型的活动构成。
此活动是在其主活动运行结束前,它的所有事件的分支都可以被执行,不会出现“排他”的现象,该活动所监听的事件
都存放在“Event Handlers”视图里。
Parallel:允许并行执行包含的Activity。
容器类型的活动,该活动的每条分支都是由Sequence活动构成的,在此活动运行时,只有每条分支全部执行完毕后该活动才结束,工作流
也才能执行Parallel活动的其他后续活动,否则工作流就将一直等待知道Parallel活动结束。此活动的每条分支之间的关系都是平行的,这里
的“平行”是指逻辑业务上的平行而在运行时都属于同一个线程。此活动被广泛运用于“会签”流程,例如某个文件要3个部门全部签字后才能
生效,那么这3各部门在该工作流程中就是平行的关系。
事务和异常处理类型活动
FaultHandler:允许根据指定的异常执行包含的Activity。
在wf中同一个容器内某个活动在运行时发生了异常,那么该容器内位于它后面的所有活动将不能被执行。
Throw:允许在工作流中引发异常。
如果容器没有对它内部子活动的异常进行捕捉,那么该容器后面的其他活动将不再被执行,反之容器后续的活动将继续执行。
在程序运行时由于未知错误引发的异常被称为隐形异常,用户可以通过Throw活动在工作流中声明一个显性的异常并将它抛出,
当异常发生时将会触发工作流运行时容器Runtime的“WorkflowTerminated”事件。
Compensate:为支持长时间运行事务的作用域启用补偿。
此活动是一个顺序类型的容器。补偿也需要指定一个区域,在该区域内如果发生了某些异常情况,那么就可以通过Compensatable活动
来指定该类型的异常应该执行哪个区域内的补偿措施,这个区域可以使用CoompensatableSequence活动来限定。
在现实工作中工作流还需要对某些特殊情况下的业务逻辑进行处理,例如某厂商生产的物品发现了缺陷,那么就需要在工作流程
中设置一个召回的流程;某些公文写错了,正规的做法就是通过一个流程将其作废,而不是直接销毁;如果给客户发了一封错误
的邮件,那么能做的就是再发一封邮件告诉他正确的信息,而不能把客户收到的那份邮件删除。在wf中可以使用CompensatableSequence
活动和Compensatable活动来实现。
注意:此活动是对已经存在的结果进行补偿。
CompensatableSequence:按具有补偿的序列执行一组活动。
CompensatableTransactionScope:在事务中按顺序执行包含的活动并支持补偿。
TransactionScope:在事务中顺序执行所包含的Activity。
CompensatableTransactionScope:在事务中按顺序执行包含的活动并支持补偿。
WebService和与WF相关的活动
InvokeWorkflow:允许使用异步Excute执行指定工作流。
Termainate:终止工作流的执行。
是结束工作流的活动,在执行时将触发工作流中的“WorkflowTerminated”事件
Suspend:挂起工作流的执行。
是暂停工作流的活动,在执行时将触发工作流中的“WorkflowSuspended”事件
WebServiceInput:允许在工作流内从WebService接收数据。
WebServiceOutput:允许在工作流内向WebService发送数据。
InvokeWebService:允许从工作流内部调用WebService。
Code活动:执行关联的代码,关键属性“ExecuteCode”。
Sequence:允许按顺序执行一组Activity。
IfElse:根据指定的条件执行包含的活动。
While:按指定的迭代次数执行包含的Activity。
Policy:根据一组关联的规则执行操作。
ConditionedActivityGroup:根据关联的事件/条件执行包含的Activity。只能在满足指定条件后,才会执行包含的Activity。
Replicator:通过创建指定数量的复制实例来执行包含的Activity。
SynchronizationScope:在同步域中顺序执行所包含的Activity。
容器类型的符合活动,它可以为每个分支设置一个“排他”的标记“SynchronizationHandles”。
事件类型活动
HandleExternalEvent:允许在工作流中接收事件。
依赖外部来触发事件的,
CallExternalMethod:从工作流中调用外部方法。
Listen:允许根据指定的延迟时间或事件执行所包含的Activity。
此活动每条分支之间都是平行关系,只要有一个分支监听到事件,其他分支就都不会被执行。
分支与分支之间是具有“排他”性的。此活动每条分支上的第一个子活动一定为事件类型的活动。
Delay:将执行延后指定的一段时间。
事件类型活动,由自身来触发事件。
该活动可以触发工作流的“WorkflowIdled”事件,使工作流进入“idle”状态。
EventHandlingScope:对子Activity的执行启用事件处理。
容器内的活动,每个分支都是由EventDriven容器类型的活动构成。
此活动是在其主活动运行结束前,它的所有事件的分支都可以被执行,不会出现“排他”的现象,该活动所监听的事件
都存放在“Event Handlers”视图里。
Parallel:允许并行执行包含的Activity。
容器类型的活动,该活动的每条分支都是由Sequence活动构成的,在此活动运行时,只有每条分支全部执行完毕后该活动才结束,工作流
也才能执行Parallel活动的其他后续活动,否则工作流就将一直等待知道Parallel活动结束。此活动的每条分支之间的关系都是平行的,这里
的“平行”是指逻辑业务上的平行而在运行时都属于同一个线程。此活动被广泛运用于“会签”流程,例如某个文件要3个部门全部签字后才能
生效,那么这3各部门在该工作流程中就是平行的关系。
事务和异常处理类型活动
FaultHandler:允许根据指定的异常执行包含的Activity。
在wf中同一个容器内某个活动在运行时发生了异常,那么该容器内位于它后面的所有活动将不能被执行。
Throw:允许在工作流中引发异常。
如果容器没有对它内部子活动的异常进行捕捉,那么该容器后面的其他活动将不再被执行,反之容器后续的活动将继续执行。
在程序运行时由于未知错误引发的异常被称为隐形异常,用户可以通过Throw活动在工作流中声明一个显性的异常并将它抛出,
当异常发生时将会触发工作流运行时容器Runtime的“WorkflowTerminated”事件。
Compensate:为支持长时间运行事务的作用域启用补偿。
此活动是一个顺序类型的容器。补偿也需要指定一个区域,在该区域内如果发生了某些异常情况,那么就可以通过Compensatable活动
来指定该类型的异常应该执行哪个区域内的补偿措施,这个区域可以使用CoompensatableSequence活动来限定。
在现实工作中工作流还需要对某些特殊情况下的业务逻辑进行处理,例如某厂商生产的物品发现了缺陷,那么就需要在工作流程
中设置一个召回的流程;某些公文写错了,正规的做法就是通过一个流程将其作废,而不是直接销毁;如果给客户发了一封错误
的邮件,那么能做的就是再发一封邮件告诉他正确的信息,而不能把客户收到的那份邮件删除。在wf中可以使用CompensatableSequence
活动和Compensatable活动来实现。
注意:此活动是对已经存在的结果进行补偿。
CompensatableSequence:按具有补偿的序列执行一组活动。
CompensatableTransactionScope:在事务中按顺序执行包含的活动并支持补偿。
TransactionScope:在事务中顺序执行所包含的Activity。
CompensatableTransactionScope:在事务中按顺序执行包含的活动并支持补偿。
WebService和与WF相关的活动
InvokeWorkflow:允许使用异步Excute执行指定工作流。
Termainate:终止工作流的执行。
是结束工作流的活动,在执行时将触发工作流中的“WorkflowTerminated”事件
Suspend:挂起工作流的执行。
是暂停工作流的活动,在执行时将触发工作流中的“WorkflowSuspended”事件
WebServiceInput:允许在工作流内从WebService接收数据。
WebServiceOutput:允许在工作流内向WebService发送数据。
InvokeWebService:允许从工作流内部调用WebService。
相关文章推荐
- NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
- Python学习之路【第二篇】-pyc简介、Python常用的数据类型及其用法和常用运算符
- Redis的数据类型简介
- Qt Quick QML 数据类型简介(QtQuick 2.3)
- Android 绑定类型服务---简介
- C语言基本数据类型简介
- workflow工作流类型及其区别
- EntityFramework开发三种工作流简介
- SAP作业类型应用简介
- Redis简介以及数据类型存储
- Swift基础语法: 23 - Swift的闭包简介, Sorted函数, 闭包的表达式语法, 根据上下文推断类型, 参数名简写, 运算符函数
- 应用数据流状态管理框架Redux简介、设计思想、核心概念及工作流
- (十九)接口类型的简介
- Python学习——动态类型简介
- Linux文件系统类型简介及支持的文件系统汇总--Linux入门到精通系列
- JBOSS jBPM 工作流管理系统简介
- 流风ASP.NET框架商业版-工作流1.0简介
- ALV类型简介
- 从零开始学C++之标准库类型(三):map 类简介和例程
- NSSet类型简介