2

I have a report with apex_item(s). The report is complicated so I show only what is relevant for simplification. The report is created with:

select ID || apex_item.hidden(11,ID) as "ID", 
       apex_item.text(p_idx => 12, p_value => VOLUME) as "Volume" 
from TEMP;

That gives:

enter image description here

On submit page, I have a process that counts the report rows (later I loop on this rows to do some action):

apex_debug.warn('count f11: ' || apex_application.g_f11.count);

The result is 2 as expected.

The problem - when I try to save changes from the report without submitting the page:

I have a button "update server" which have a dynamic action on click with PL/SQL action:

enter image description here

The PL/SQL contains exactly the same code as the loop above but the result is now 0.

My goal is to make actions based on the rows. without submitting the page, But I can't understand how can I loop this rows without submit. Thanks

Izik
  • 746
  • 1
  • 9
  • 25

1 Answers1

2

When you're running a Dynamic Action of the type Execute PL/SQL Code (now called "Execute Server-side Code"), you can specify page items to be submitted with the action that will be set in session state before the PL/SQL block runs, but I don't think you can specify those fxx whatever they're called type of items. I think you have two options:

  1. Create a hidden item and populate that with a Javascript action that runs before your PL/SQL action, then submit that hidden item along with your PL/SQL action.

  2. Change your PL/SQL code to an Ajax Callback process, then invoke it with apex.server.process in a Javascript DA. You can specify fxx type items to submit with that call.

eaolson
  • 14,717
  • 7
  • 43
  • 58