ファセット検索の結果をHTMLでエクスポートするには、との相談がありました。Oracle APEX 20.2よりAPEX_REGION.EXPORT_DATAというAPIが提供されており、APEX_REGION.OPEN_QUERY_CONTEXTを使わずに実装できるようになっています。
サンプル・データセットのEMP/DEPTの表EMPを使ったファセット検索のページより、HTML形式でエクスポートを行う機能を実装してみます。
表EMPをソースとしたファセット検索のページを含むアプリケーションを作成します。
プロセス・ビューを開き、AjaxコールバックとしてHTML形式でエクスポートするプロセスEXPORTを作成します。
ソースのPL/SQLコードとして以下を記述します。APIリファレンスに例として紹介されているコードを、ほぼそのまま利用しています。
識別のボタン名をEXPORT、ラベルをExport、動作のアクションとしてこのアプリケーションのページにリダイレクトを選択します。
ターゲットをクリックし、リンク・ビルダーを開きます。
ターゲットのページとして1を指定し、詳細のリクエストとしてAPPLICATION_PROCESS=EXPORTを指定します。この指定により、Ajaxコールバックとして作成したプロセスEXPORTが実行されます。
以上で実装は完了です。
今回作成したアプリケーションのエクスポートを以下に置きました。
https://github.com/ujnak/apexapps/blob/master/exports/html-export-apex-region-export-data.zip
Oracle APEXのアプリケーション作成の参考になれば幸いです。
完