我创建了一个Master-Detail页面。详细信息区域是报告区域。 假设主区域记录了所生产的产品及其详细信息 假设,详细区域记录所涉及的员工列表(多行)及其详细信息 为了实现冗余,EMPNO列存在于详细信息表中,但不存在于EMP_NAME列中。 我的问题是,我想在详细区域中显示非数据库专栏EMP_NAME。 EMP_NAME根据EMPNO列值保存值(查询EMP表后)。怎么做到这一点?请帮忙。 (我使用Apex 4.2.6)
谢谢, -Anand
答案 0 :(得分:0)
您可以在查询中添加标量子查询列:
select ...,
(select emp_name from emp where emp.empno = det.empno) as emp_name
from details det
...
默认情况下,APEX会将其设为“显示为文本”列。
但是如果你想让它显示新记录的新内容,那还不够。您可以改为将EMPNO列的显示为属性更改为选择列表,然后将LOV定义为
select ename, empno from emp order by ename
现在,不是键入EMPNO值并尝试将名称显示在另一列中,名称将显示在选择列表中,而不是 EMPNO。或者你可以像这样展示EMPNO:
select empno||' - '||ename as d, empno from emp order by 1
答案 1 :(得分:0)
您可以使用_NOSUBMIT修补忽略的列名称。您的查询将如下所示:
SELECT D.EMPNO
...
, EMP.EMP_NAME AS EMP_NAME_NOSUBMIT
, FROM ...
Apex将忽略nosubmit字段。