Oracle Apex交互式网格:如何根据EMP_ACCOUNT自动填充EMP_CODE?
Oracle Apex交互式网格自动填充EMP_CODE配置步骤
1. 重构EMP_ACCOUNT列的弹出式LOV查询
把原有仅返回emp_account的LOV查询,替换为关联两张表的语句,确保只有存在对应EMP_CODE的账户才会出现在选项列表中:
select a.emp_account as display_value, a.emp_account as return_value from employee_accounts a inner join employee_codes b on a.emp_acc_id = b.emp_acc_id order by a.emp_account;
2. 添加动态操作实现实时填充
在当前页面创建新的动态操作,实现EMP_ACCOUNT选择后自动填充EMP_CODE:
- 触发条件:选择「交互式网格」事件类型为「列值更改」,指定目标列为EMP_ACCOUNT
- 动作配置:选择「设置值」动作
- 设置类型:选择「SQL语句」
- 输入关联查询语句,根据选中的EMP_ACCOUNT获取对应EMP_CODE:
select b.emp_code from employee_accounts a inner join employee_codes b on a.emp_acc_id = b.emp_acc_id where a.emp_account = :EMP_ACCOUNT - 影响元素:选择交互式网格的EMP_CODE列
- 执行模式:选择「替换」
3. 确认EMP_CODE列属性
保持EMP_CODE列的「可编辑」属性为「否」(仅显示状态),确保用户无法手动修改该列,只能通过动态操作自动填充值。
内容的提问来源于stack exchange,提问作者Velocity
相关产品推荐
相关产品推荐

