ADF:如何在一个adf table中标示一个view object有从属的detail信息
来源:互联网 发布:软件ico图标 编辑:程序博客网 时间:2024/05/17 03:35
会有朋友问到,如何可以在以表格形式显示一个数据库表的信息的时候,其中某一个字段是标示从属detail数据是否存在。比如,在部门的表格中,有一个字段是标示是否该部门有员工。
一般来说,有不少方法可以来实现这样的功能,也可以在一个应用的不从的层面来实现。最快的方法,就是在代表部门的View和代表Employee的View之间,创建一个ViewLink,形成一个master-detail的关系。然后在master一边创建一个transient的属性,然后用groovy表达式来计算从属的detail是否存在。 但这样做的话,对每一条Master的记录,ADF都会去查询其相关的Detail的信息,造成额外的性能开销。并且,由于我们只是需要标示是否有从属的Detail信息,所以用ViewLink就有点画蛇添足,将Detail的信息都查询回来了。
经过研究,可行的一个方案是在Master的Entity上,追加一个transient的属性。并定义该属性的默认值为一段SQL。然后在ViewObject中添加该属性即可。
截图如下:
首先添加属性并设默认值为:case (select count(*) from employees e where e.department_id = Departments.DEPARTMENT_ID) when 0 then 'N'else 'Y'end
然后在ViewObject中添加该属性
添加完成后,运行AM,可以看到结果
在jdev日志信息里面也可以看到该DepartmentView的查询语句只有一条: SELECT Departments.DEPARTMENT_ID, Departments.DEPARTMENT_NAME, Departments.MANAGER_ID, Departments.LOCATION_ID, (case (select count(*) from employees e where e.department_id = Departments.DEPARTMENT_ID) when 0 then 'N'else 'Y'end) AS INDICATOR FROM DEPARTMENTS Departments
- ADF:如何在一个adf table中标示一个view object有从属的detail信息
- ADF: 如何在首次进入页面时避免table自动执行view object的查询
- ADF: 如何在首次进入页面时避免table自动执行view object的查询
- ADF View Object 调优
- 如何在ADF页面中显示警告信息?
- 在ArcGIS Server Java ADF中创建一个自定义task的简单步骤
- Oracle ADF 关于EO Master-Detail关系中新增Detail时带主键值的问题
- Oracle ADF Tree基于View Object的建立
- ADF TABLE 和 ADF read only Table的转换
- 在ADF中为Table自动生成行号
- 在ADF中使用JavaScript的技巧
- 在ADF 中获得Connection 的方法
- ADF 在weblogic 中安装的完整版
- 译 ADF View Object Performance Tuning Analysis
- ADF中怎样创建带有小计功能的Table
- ADF中改变table每页展示数据的行数
- 在ADF中使用InlinePopup
- 在ADF中使用AutoSuggest
- html5介绍,什么是html5,html5新特性
- linux5系统下,db2日志前滚 报的错误
- MySQL时间日期查询相关函数与方法
- JVM加载class文件的原理
- svg transform 坐标变换方式
- ADF:如何在一个adf table中标示一个view object有从属的detail信息
- php判断字符以及字符串的包含方法属性
- 解决Ubuntu下vsftp不能上传文件
- 四极管:2410启动代码分析之 vector.s详解一
- Flex安全沙箱另类问题
- java线程学习
- HTML 5 视频
- Play with libvirt
- ExtJs Accordion布局