As noone replied to your question (yet), let me say a few words, based on my current knowledge & experience. Note that someone might have another, better idea and opinion.
A tabular form is created on a table, its source is a SELECT
statement. Saying that you want to check row selector checkboxes on some report page and those values will then be transferred into a tabular form on another page is make-a-wish statement. I'd say that those values should be INSERTED
into a table (on which that tabular form is created upon), and tabular form should then perform re-query in order to fetch those rows.
As of "checking row selector checkboxes" in a report and doing "something" with those rows: boy, I don't know how to do that. Yes, I have manipulated with rows selected by my own checkbox items in a tabular form (note the difference: not in a report, but in a tabular form) and it was much more a pain than a joy.
I'd suggest you to read the following Patrick Wolf's article: Which Tabular Form Column is mapped to which Apex_Application.g_fxx array?. Why? Because it explains what to do with g_fxx array
. It is a mean to manipulate values in a tabular form. Just to show an example I used in one of 4.x Apex versions (no, I don't have any more recent code) so that you'd get the idea of how it is supposed to be done; this is a page process which fires on Submit.
- "01 - ID" represents "apex_application.g_f01"
- "02 - CB_NEDOSTATAK" represents "apex_application.g_f02"
and so forth; those are items in a tabular form
/* 01 - ID
02 - CB_NEDOSTATAK
03 - CB_HITNOST
04 - CB_OTKLONJEN
05 - NAPOMENA
*/
begin
for i in 1 .. apex_application.g_f01.count loop
update dg_pregled set
cb_nedostatak = case when apex_application.g_f02(i) = 1 or
apex_application.g_f03(i) = 1 then 1
else 0
end,
cb_hitnost = decode(apex_application.g_f03(i), 1, 1, 0),
cb_otklonjen = case when apex_application.g_f02(i) = 1 and
apex_application.g_f04(i) = 1 then 1
else 0
end,
napomena = apex_application.g_f05(i)
where id = apex_application.g_f01(i);
end loop;
end;
Basically, you'd do something like that; instead of UPDATE
, you'd do INSERT
.
As I said: this doesn't have to be an optimal solution to your problem, but that's what I can say about it. Good luck!