Oracle 顶点复选框事件

Oracle apex checkbox event

我在我的 apex 应用程序中使用一个文本字段和一个按钮,该按钮具有单击事件(动态操作)。按下按钮后,来自 SQL 的数据将使用此 PL/SQL 代码插入到文本字段中:

declare
l_result varchar2(32700);
begin
     for c1 in(
     select ename
     from emp
     ) loop
     l_result := l_result || c1.ename || chr(10);
    end loop;
   :Px_TEXTAREA_ITEM := l_result;
 end;

这可行,但现在我想将按钮事件与复选框事件交换。如何在 PL/SQL 查询中添加 if...else 语句,如果选中复选框则插入数据,如果未选中则清空文本字段?

这里是关于如何使用带复选框的 DA 的示例。这是在版本 21.1 上,但该机制适用于任何版本。 功能:如果选中复选框,则员工 SCOTT 的薪水加薪 1,如果复选框未选中,则员工 SCOTT 的薪水减少 1。这是 EMP/DEMP 示例数据。

  1. 创建“复选框”类型的页面项目 P37_TOGGLE_SCOTT。勾选值“Y”,未勾选值“N”
  2. 为名为“Raise/Lower Scott Salary”的页面项目 P37_TOGGLE_SCOTT 更改创建动态操作。客户条件:“Item = Value”,Item:P37_TOGGLE_SCOTT,Value:Y
  3. 创建一个真正的动作执行Server-side代码pl/sql代码:
BEGIN
  UPDATE emp SET sal = sal + 1 WHERE ename = 'SCOTT';
END;
  1. 创建错误操作执行 Server-side 代码 pl/sql 代码:
BEGIN
  UPDATE emp SET sal = sal - 1 WHERE ename = 'SCOTT';
END;

应该清楚如何将上述示例用于您的业务案例。