ajax コールバック (PL/SQL) に次のコードがあります。
:P1_CNT := TO_NUMBER(:P1_CNT) + 1;
apex_util.set_session_state
(p_name => 'P1_CNT'
,p_value => :P1_CNT
);
これはうまくいくようです。しかし、そのページ アイテムをチェックするプロセスが呼び出され、コールバックで 1 に設定されていてもページ アイテムが 0 として表示されます。どうすれば修正できますか?
ajax を呼び出すコードは、以下の JavaScript であり、カスタム動的アクションから実行されます。
for ( var i=0; i<records.length; i++) {
apex.server.process
("my_ajax_callback"
,{x01:records[i][1]}
,{type:'GET', dataType: 'text', success: function( text) {}}
);
}
apex.page.submit( 'COMPLETE_PROCESS_RECORDS' );
COMPLETE_PROCESS_RECORDS は、ループ内のすべてのレコードが ajax コールバックによって処理された後に実行されるプロセスです。ajax コールバックは、渡された各レコードを評価し、一部を処理して他を破棄します。P1_CNT は、レコードがさらに処理されるたびにインクリメントされます。