【问题标题】:Can't figure out apex_item.checkbox2无法弄清楚 apex_item.checkbox2
【发布时间】:2020-04-28 21:56:21
【问题描述】:

从昨天开始,我一直在尝试找出 APEX 中的复选框,这应该很简单,但是我什至无法使最简单的场景工作。

这是我做的,所以你可以告诉我我做错了什么。

我有三张桌子:

create table semester(
  id number not null,
  name varchar2(30) not null,
  primary key(id)
);

create table subject(
  id number not null,
  name varchar2(30) not null,
  primary key(id)
);

create table semester_subject(
  id number not null,
  semester_id number not null,
  subject_id number not null,
  primary key(id),
  foreign key(semester_id) references semester(id),
  foreign key(subject_id) references subject(id),
  constraint semester_subject_uq unique(semester_id, subject_id)
);

我在顶点创建了一个区域,其中包含一个选择列表,其中包含以下值列表:

select name d, id r
from semester
order by 1

以及一份包含以下查询的报告

select 
  apex_item.checkbox2(10, id, 'UNCHECKED') "id",
  subject "Subject'
from subject;

我还有一个按钮来提交页面。 我想要的是在 term_subject 表中插入带有勾选复选框的科目 ID,以及从选择列表中选择的学期 ID。

所以我在提交过程中做了这个:

DECLARE
  v_subject_id subject.id%type;
  v_semester_id semester.id%type;
BEGIN
  v_semster_id := :PX_SEMESTER;
  FOR I in 1..APEX_APPLICATION.G_F10.COUNT LOOP
    v_subject_id := APEX_APPLICATION.G_F10(i);
    insert into semester_subject(semester_id, subject_id)
      values(v_semester_id, v_subject_id); --I have a sequence and a trigger for the id
  END LOOP;
END;

在我的 VPS 上,当我提交页面时,我得到 404 The requested URL /apex/wwv_flow.accept was not found on this server。所以我在 apex.oracle.com 上创建了一个工作区,页面重新加载,我没有收到任何错误,但是当我检查表格时,没有插入数据。

提前感谢您的帮助。

【问题讨论】:

  • 检查您的查询 - subject "Subject' 应该是 subject "Subject"
  • 除此之外,我已经复制了您的提交过程,它按预期工作。我怀疑这里还缺少其他导致问题的东西。
  • 我同意杰弗里的观点。除了一些错字,我没有发现任何明显的错误。
  • 谢谢大家,我会尝试从头开始,希望能成功。

标签: oracle plsql oracle-apex


【解决方案1】:

好的,我知道我做错了什么。来自我的 sql 查询的报告将 id 列呈现为转义的 html,而不是默认情况下的复选框。所以我去了报告属性并将 id 列设置为显示为简单的复选框,但这就是弄乱值的原因。当我将 id 列设置为标准列时,一切正常。

【讨论】:

  • 是的 - 可以的。不要忘记接受你自己的答案!
猜你喜欢
  • 2013-05-19
  • 1970-01-01
  • 1970-01-01
  • 2014-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多