2010年4月10日星期六

ADF_065:使用ADF-BC 实现查询功能之五:使用TaskFlow过滤查询结果

开发环境:JDevloper 11.1.2.1.0+ Oracle Database 10g Express Edition 10.2.0.1。

考虑这种情况:
(1)用户的查询过程可能非常复杂,比如经过多个页面,最终产生查询结果。
(2)其它模块也会用到该查询功能,因此希望能够重用。
使用ADF TaskFlow应该能够解决这个问题。以下我就以上一个实验的的项目为基础来说明如何实现。

1. 创建页面:employeeTable.jsf
拖放DataControl中的EmployeesView1到页面,选择生成Read-Only Table。

2. 完成TaskFlow
(1)创建TaskFlow:prefilter-employee-taskflow.xml

(2)拖放页面employeeTable.jsf到TaskFlow中。
(3)拖放DataControl中的EmployeesView1的ExecuteWithParams 到TaskFlow中。
其中设置参数值为S%,可以根据需要设置成其它值。

完成后的TaskFlow定义如下图:


3. 新建页面:main.jsf
拖放TaskFlow:prefilter-employee-taskflow.xml到页面,选择生成Region。

4. 运行页面:main.jsf
可以看出,显示的都是Email以“S”开头的员工。


Project 下载:ADF_Query_ExecuteWithParams(4).7z

没有评论: