Oracle apex 复选框事件

发布于 2025-01-15 11:52:55 字数 405 浏览 0 评论 0原文

我在我的 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 语句,如果选中复选框则插入数据,如果未选中则清空文本字段?

I am using a text field and a button in my apex application with a click event (dynamic action) for the button. After the button was pressed, data from a SQL will be inserted into the text field with this PL/SQL code:

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;

This works but now I would like to exchange the button event with a checkbox event. How to add if...else statement inside the PL/SQL query, which inserts the data if the checkbox is checked and empty the text field if it's unchecked?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

肩上的翅膀 2025-01-22 11:52:55

以下是有关如何使用带有复选框的 DA 的示例。这是 21.1 版本的情况,但该机制适用于任何版本。
功能:如果选中复选框,则员工 SCOTT 的工资加薪 1,如果未选中复选框,则员工 SCOTT 的工资减少 1。这是 EMP/DEMP 样本数据的结果。

  1. 创建类型为“复选框”的页面项 P37_TOGGLE_SCOTT。选中值“Y”,未选中值“N”
  2. 针对名为“提高/降低 Scott 薪资”的页面项目 P37_TOGGLE_SCOTT 的更改创建动态操作。客户端条件:“Item = Value”,Item:P37_TOGGLE_SCOTT,Value:Y
  3. 创建一个 true 操作 使用 pl/sql 代码执行服务器端代码:
BEGIN
  UPDATE emp SET sal = sal + 1 WHERE ename = 'SCOTT';
END;
  1. 创建一个 false 操作 使用 pl/sql 代码执行服务器端代码:
BEGIN
  UPDATE emp SET sal = sal - 1 WHERE ename = 'SCOTT';
END;

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

Here is sample on how to use a DA with a checkbox. This is on version 21.1 but the mechanism works for any version.
Functionality: if checkbox checked then employee SCOTT gets a salary raise of 1, if checkbox unchecked then employee SCOTT gets a salary decrease of 1. This is on EMP/DEMP sample data.

  1. Create a page item P37_TOGGLE_SCOTT of type "Checkbox". Checked value "Y", unchecked value "N"
  2. Create a dynamic action on change of page item P37_TOGGLE_SCOTT named "Raise/Lower Scott Salary". Client condition: "Item = Value", Item: P37_TOGGLE_SCOTT, Value: Y
  3. Create a true action Execute Server-side Code with pl/sql code:
BEGIN
  UPDATE emp SET sal = sal + 1 WHERE ename = 'SCOTT';
END;
  1. Create a false action Execute Server-side Code with pl/sql code:
BEGIN
  UPDATE emp SET sal = sal - 1 WHERE ename = 'SCOTT';
END;

It should be clear how to use the above sample for your business case.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文