Oracle 没有得到想要的结果
Oracle 没有得到想要的结果,oracle,oracle11g,oracle-apex,oracle-apex-5.1,Oracle,Oracle11g,Oracle Apex,Oracle Apex 5.1,在这里输入code我有个问题。下面是pl/sql以前的工作,现在我不知道发生了什么。。。我想使用复选框将记录插入一个名为incoming from a interactive report的表中 我的sql是 SELECT apex_item.checkbox2(1,filenumber) || apex_item.hidden(2,filename) || APEX_ITEM.hidden(3,'&APP_USER. ') || APEX
在这里输入code
我有个问题。下面是pl/sql以前的工作,现在我不知道发生了什么。。。我想使用复选框将记录插入一个名为incoming from a interactive report的表中
我的sql是
SELECT apex_item.checkbox2(1,filenumber)
|| apex_item.hidden(2,filename)
|| APEX_ITEM.hidden(3,'&APP_USER. ')
|| APEX_ITEM.hidden(4,volume)
|| APEX_ITEM.hidden(6,filename)
as "SELECT",
FILENUMBER,
FILENAME,
LOCATION,
OPENDATE,
CLOSEDDATE,
VOLUME,
SUB,
temporary,
registryid,
STATUS
from REGISTRY
我的pl/sql是
begin
for idx in 1 .. apex_application.g_f01.count
loop
if apex_application.g_f01(idx) is not null then
insert into incoming
(filenumber,
filename
)
values
(apex_application.g_f01(idx),
apex_application.g_f02(idx)
);
end if;
end loop;
end;
所有这些都是在过程之后发生的这很好。。然而,最近我遇到的问题是pl/sql给了我正确的文件号,但文件名不正确。
例如
假设ir报告已经发布
filenumber filename
1 aaron
2 kerron
3 Joshua
当我选择数字2(第二条记录)时,传入表中的结果将是
filenumber filename
2 aaron
它总是在第一条记录落在apex_项中时选择第一条记录。隐藏
如果我把它倒过来
SELECT apex_item.checkbox2(1,filename)
|| apex_item.hidden(2,filenumber)
文件名是正确的,文件号将执行我在上面解释的操作,即如果我选择第二条记录,我将获得第二条记录
filenumber filename
1 kerron
当我加上
begin
for idx in 1 .. apex_application.g_f01.count loop
for i in 1..apex_application.g_f02.count loop
if apex_application.g_f01(idx) is not null then
insert into INCOMINGREQUESTNOTIFICATION
(requestedfile,filenumber
)
values
(apex_application.g_f01(idx),
apex_application.g_f02(i)
);
end if;
end loop;
end loop;
end;
@romeuBraga我得到的是所有3行,而不是所选的那一行。你能告诉我哪里出了问题吗?你需要一个隐藏项来存储ID。 *1和2存储相同的信息
select column1,
column2,
column3,
apex_item.hidden(p_idx => 1,
p_value => code) ||
apex_item.checkbox2(p_idx => 2,
p_value => code) CheckBox,
other items
from x
在这种情况下,需要使用此pl/sql来获取正确的行值
begin
for i in 1..apex_application.g_f01.count loop
for j in 1..apex_application.g_f02.count loop
if apex_application.g_f01(i) = apex_application.g_f02(j) then
--insert something here
end if;
end loop;
end loop;
end;
使用APEX_ITEM.CHECKBOX显示的复选框将仅包含选中行的APEX_应用程序数组中的值。因此,需要两个循环。在这个问题中检查idx项目1和3是如何使用的(仅在“服务器端条件:”一节中)。