【发布时间】:2019-01-28 09:20:50
【问题描述】:
您能帮我找到解决以下问题的最佳方法吗?
问题:我有一个 oracle apex 页面,其中有一个报告,其中列有部门名称和员工姓名以及复选框。选择一个或多个复选框并单击提交按钮后,应该会发生以下情况。
- pl/sql 代码应从 emp 表中获取所有选定行的部门名称。
- 接下来,它应该为选中的复选框获取每个部门下的雇员姓名。
实现这一目标的最佳方法是什么?
下面是我的代码。
FOR i in 1..APEX_APPLICATION.G_F01.count
LOOP
IF APEX_APPLICATION.G_F01(i) IS NOT NULL THEN
select listagg(dept_name,',') WITHIN GROUP (ORDER BY
TESTSET_PATH) into str_dept_names from emptable
WHERE
emptable._ID=APEX_APPLICATION.G_F01(i) group by dept_name;
END IF;
END LOOP;
FOR REC IN str_dept_names
LOOP
FOR i in 1..APEX_APPLICATION.G_F01.count
LOOP
IF APEX_APPLICATION.G_F01(i) IS NOT NULL THEN
select listagg(ename,',') WITHIN GROUP (ORDER BY
dept_name) into str_enums from
emptable where dept_name LIKE
(rec.str_dept_names) and
emptable .ID
=APEX_APPLICATION.G_F01(i);
myclob:=-myclob||'java -jar test.jar -
dept'||rec.str_dept_names||str_testnums;
END IF;
END LOOP;
END LOOP;
我在 myclob 中的输出应该是:deptA,emp1,emp2
【问题讨论】:
标签: oracle plsql oracle-apex