当前位置:文档之家› Oracle 工作流培训教程

Oracle 工作流培训教程


应用
Application 界面
上海汉得计算机系统有限公司®
ቤተ መጻሕፍቲ ባይዱ
通知汇总的Web页面
上海汉得计算机系统有限公司®
通知明细的Web页面
上海汉得计算机系统有限公司®
电子邮件方式的通知
上海汉得计算机系统有限公司®
目录服务
• WF_USERS 保存如下一些信息:用户名、用户的显示 名、用户接收通知的偏好和电子邮件的 地址 • WF_ROLES 保存角色的信息 • WF_USER_ROLES 记录了用户和角色之间的关系
上海汉得计算机系统有限公司®
单元目标
• • • • 创建一个项目类型 Selector/Callback功能 创建项目类型属性 创建枚举类型
上海汉得计算机系统有限公司®
创建一个新的工作流流程
定义一个项目类型 定义项目类型的属性 定义枚举类型和该类型包含的值 定义消息 定义消息的属性 定义功能、通知和自流程,这些组件将作为 流程中的活动 7. 绘制活动之间的关系(流程图) 1. 2. 3. 4. 5. 6.
上海汉得计算机系统有限公司®
向导
上海汉得计算机系统有限公司®
定义一个项目类型
在此处输入Selector功 能所对应的PL/SQL存 储过程名
上海汉得计算机系统有限公司®
定义项目类型属性
• 哪些信息需要被定义为项目类型的属性? –那些要在通知中显示的信息 –那些在功能中需要使用的信息(eg.采购 订单审批工作流中的采购订单编号) –通知的接收人、发送人等的信息
上海汉得计算机系统有限公司®
工作流定义导入程序
Workflow Builder
Workflow Loader Workflow Loader Process Definition Workflow Engine
上海汉得计算机系统有限公司®
通知系统
工作流引擎 通知邮递员
目录服务
通知系统
工作流 工作列表
由下至上地创建一个工作流流程
定义一个项目类型 定义项目类型的属性 定义枚举类型和该类型包含的值 定义消息 定义消息的属性 定义功能、通知和自流程,这些组件将作为 流程中的活动 7. 绘制活动之间的关系(流程图) 1. 2. 3. 4. 5. 6.
上海汉得计算机系统有限公司®
由上至下地创建一个工作流流程
可以先不输入活动所 对应的PL/SQL存储过 程或外部程序的名字
在绘制流 程的时候 创建功能
上海汉得计算机系统有限公司®
使用Verify菜单项校验流程
• • • • 在流程中至少有一个开始活动和一个结束活动 流程没有将自身作为子流程包含在流程中 相同的子流程没有在流程中被使用两次 对应活动的任何一个结果值,都有一个连接指 向后续的活动 • 所有被标记为End的节点,没有指向其它活动 的连接
单元目标
• 定义工作流流程的组件 • 计划一个工作流流程
上海汉得计算机系统有限公司®
流程的组成部分
Item Type 项目类型
Process
Functions Notifications Subprocesses
Lookup Types Attributes PL/SQL
Messages Lookup Types Attributes PL/SQL
上海汉得计算机系统有限公司®
工作流监控程序
上海汉得计算机系统有限公司®
工作流监控程序(续)
上海汉得计算机系统有限公司®
练习
• 将工作流流程保存到数据库中 • 使用‘启动工作流流程’的Web页面来启 动工作流流程 • 修改工作流流程的定义
上海汉得计算机系统有限公司®
第二课
计划一个工作流流程
上海汉得计算机系统有限公司®
Functions Notifications Lookup Types
上海汉得计算机系统有限公司®
Oracle Workflow Builder
上海汉得计算机系统有限公司®
Oracle Workflow Builder (续)
• • • • – – – – – – 用于创建工作流的组件 在对象浏览器窗口中列出了流程的所有组成部分 组件的集合称为项目类型 任何一个项目类型都包含了一下分支 属性 attributes 流程(子流程) processes(subprocesses) 通知 notifications 功能 functions 消息 messages 枚举类型 lookup types
上海汉得计算机系统有限公司®
工作流体系结构
通知列表 工作流监控 Web页面 Oracle 应用服务器 或 WebDB 用户 角色 Workflow Builder
Web分析 工具
电子邮件 客户端 最终用户 客户端
传送 回应 转交 取消 查询
执行 定义 管理 监控 查询
Workflow Loader 工作流定义 文件(*.wft)
• Subprocesses (unlimited hierarchy)
上海汉得计算机系统有限公司®
工作流引擎
• 内嵌在Oracle8i的服务器中 • 根据使用Workflow Builder所创建的工 作流流程来协调流程中各个活动的执行 • 监控流程中各个活动的状态 • 使用PL/SQL存储过程或JAVA的API来记录 工作流状态的任何变化
上海汉得计算机系统有限公司®
导入角色
上海汉得计算机系统有限公司®
绘制一个流程
• 1. a. b. c. d. 任何一个流程都包含一个或多个开始活动和 一个或多个的结束活动 在开始绘制流程前必须先打开Workflow Builder中的流程窗口 在对象浏览器窗口中双击流程活动的图标 选择一个流程活动然后按Ctrl+E 选择一个流程活动然后选择‘Edit’菜单下的 ‘Process Detail’菜单项 使用向导来创建一个流程活动
上海汉得计算机系统有限公司®
工作流流程的定义
上海汉得计算机系统有限公司®
工作流支持的流程结构
• Looping • Results_based branching
• Parallel flows • Rendezvous
上海汉得计算机系统有限公司®
工作流支持的流程结构(续)
• • – – Voting Timeouts Escalation Automatic forwarding
上海汉得计算机系统有限公司®
自循环的连接
如果活动超时,它 将循环回自己重新 运行
上海汉得计算机系统有限公司®
<DEFAULT> 连接
如果活动的返回值不在它的结果集内, 那么可以使用<DEFAULT>连接来处理 相应的业务逻辑
上海汉得计算机系统有限公司®
<ANY> 连接
如果使用了<ANY>连接,那么无论 活动的返回值是什么<ANY>连接所 指向的活动都将被执行
上海汉得计算机系统有限公司®
Show Label In Designer 菜单项
上海汉得计算机系统有限公司®
显示模式 Display Mode
Presentation Mode Developer Mode
使用标准 的图标
使用对象 的内部名 称
上海汉得计算机系统有限公司®
绘制一个流程 (续)
3. 在节点之间创建连接(箭头):选中源节点按 下鼠标右键,然后拖动鼠标到目标节点,这 样就在两个节点之间创建了一个连接 4. 如果源节点对应的活动定义过结果集(Lookup Type),那么在创建连接的时候将要求用户在 结果集中选择一个结果值
通知邮递员 程序 应用服务器
内嵌工作流的应用
Oracle服务器 开发者 客户端
上海汉得计算机系统有限公司®
工作流的一些特征和定义
• • • • • • • • • WorkflowBuilder 工作流引擎 导入程序 通知系统 通知汇总(Notification Worklist)的Web页面 通知明细Web页面 电子邮件方式的通知 目录服务(Directory Services) 工作流的监控
工作流用于完成以下三种重要的业务需求
• 在业务流程中发送、提供附加信息,这些附加信息以 自助的Web页面或Form的形式存在,例如:在 Application中审批采购订单时,采购订单的form会作 为附加信息提供给审批人了解工作流的体系结构 • 定义业务规则。使用WorkflowBuilder(图形化工具) 修改业务规则的流程;使用PL/SQL写流程中活动的源 代码 • 发送电子邮件。工作流可以以电子邮件的方式向任何 Application的用户发送通知
计划一个工作流流程 (续)
• 确定在什么时候去启动这个流程 a. 在什么条件下流程将被启动?在form中的一 个按钮被按下后、出现一个数据库异常的时 候,或者在其它一些条件下 b. 是否需要一个界面来启动流程 • 确定流程可能出现的结果,并为流程的结果 定义一个枚举类型
上海汉得计算机系统有限公司®
上海汉得计算机系统有限公司®
单元目标
• 绘制一个工作流流程 • 将工作流提供的标准活动集成到流程中 • 查看项目类型中的流程定义
上海汉得计算机系统有限公司®
创建一个新的工作流流程
定义一个项目类型 定义项目类型的属性 定义枚举类型和该类型包含的值 定义消息 定义消息的属性 定义功能、通知和自流程,这些组件将作为 流程中的活动 7. 绘制活动之间的关系(流程图) 1. 2. 3. 4. 5. 6.
上海汉得计算机系统有限公司®
Oracle Workflow Builder
• 工作流的开发工具 – 已图形化的方式定义和修改工作流 – 运行在Windows平台上 • 用户可以将工作流的定义保存在数据库中或存成一个 文件 • Workflow Builder有两部分构成 – 对象浏览器 – 流程图表窗口
相关主题