ユーザーアプリケーション開発者操作ガイド - 文字変換
ドキュメント対応バージョン
バージョン | 更新日 |
---|---|
DBXFORM - Version 1 | 2025/03/21 |
目次
Oracle APEXでの利用例
本章は、DBXFORM帳票開発アプリにて作成した帳票テンプレートJSONファイルをもとに帳票の生成またはファイルの結合を行うための実装例を説明します。帳票テンプレートJSONファイルやその保存テーブル及びデータ取得元のテーブルが作成されていることを前提とします。
DBXFORM帳票開発アプリについてはDBXFORM帳票開発者操作ガイド
を参照してください。
想定読者 |
---|
アプリケーション開発者 |
帳票ファイルの生成
DBXFORM帳票開発アプリにて生成した帳票テンプレートJSONファイル及び、SQLグループで設定した問合せ先のテーブルデータが存在することを前提とします。
帳票テンプレートJSONファイルのテーブル保存
帳票テンプレートJSONファイルをテーブルのBLOB列に保存します。
保存テーブルの例:
create table template_json_table(
blob_template_json_file BLOB
);
文字変換帳票ファイル生成アプリケーション作成
アプリケーション・ビルダー
を開き、作成
をクリックします。新規アプリケーション
をクリックし、アプリケーションの作成画面に遷移します。名前
に帳票ファイル生成アプリケーション
を入力し、アプリケーションの作成
ボタンをクリックします。
文字変換帳票ファイル生成ページの作成
帳票ファイル生成アプリケーション
のページ・デザイナ
に遷移します。ページの作成
をクリックし、空白ページ
を選択します。ページ定義
にて任意のページ名を入力し、ページ・モード
にて標準
を選択しページの作成
をクリックします。
文字変換帳票ファイルダウンロードボタンの設定
- 帳票のダウンロードを行うための
Text
ボタンを配置します。 識別
>ラベル
に帳票のダウンロード
と入力します。動作
>アクション
にてページの送信
が選択されていることを確認してください。
文字変換帳票ファイル生成プロセスの設定
- ページ・デザイナ左側の
プロセス
タブにてAjaxコールバック
にプロセスを作成します。 識別
>名前
にて任意の名称を設定します。(例: FORM_DOWNLOAD)を設定します。この名称は後程使用します。ソース
>PL/SQLコード
に以下のコードを入力します。
declare
l_sql_variable_json JSON_OBJECT_T;
l_output_file_name VARCHAR2(255);
l_form_template_file BLOB;
l_form_template_json JSON_OBJECT_T;
l_result_blob BLOB;
begin
l_sql_variable_json := JSON_OBJECT_T();
-- バインド変数用JSONの生成(Version 1.6まではADD_SQL_KEYを使用してください)
-- p_sql_variable_json: 保存するJSON_OBJECT_T型の変数を指定します(複数キーが存在する場合同じ変数を指定します)。
-- p_variable_name: 帳票テンプレートJSONファイルの、SQLグループに指定したSQLの変換するキーを指定します。 (#DEPARTMENT_ID#であれば、DEPARTMENT_IDを指定)
-- p_data: キーの変換する値を指定します。
-- p_value_type: 値の種類を記載してください。stringかnumberが指定できます。
DBXFORM.ADD_BIND_VARIABLE_DATA(
p_sql_variable_json => l_sql_variable_json,
p_variable_name => 'DEPARTMENT_ID',
p_data => '10', -- 部門IDが10のデータを取得
p_value_type => 'number'
);
-- 帳票テンプレートJSONファイルを保存したテーブルからBLOBを取得
select blob_template_json_file
into l_form_template_file
from template_json_table;
-- 取得したBLOBファイルをJSONオブジェクトに変換
l_form_template_json := JSON_OBJECT_T(l_form_template_file);
-- ファイル名の指定
l_output_file_name := 'sample_file_name.pdf';
-- 帳票の生成
l_result_blob := DBXFORM.GET_RESULT_FORM(
p_template_json => l_form_template_json,
p_sql_variable_json => l_sql_variable_json
);
-- 生成したファイルのダウンロード
DBXAP_UTIL.DOWNLOAD_FILE (
p_file_name => l_output_file_name,
p_file_data => l_result_blob
);
exception
WHEN OTHERS THEN
rollback;
RAISE;
end;
文字変換帳票ファイル生成用ブランチの設定
プロセスの後
にブランチ
を作成します。動作
>タイプ
にて、ページまたはURL(リダイレクト)
を選択します。ターゲット
のリンクが定義されていません
をクリックしリンク・ビルダー・ターゲット
に遷移します。ターゲット
>ページ
に&APP_PAGE_ID.
(現在のページ番号)を入力します。詳細
をクリックし、詳細入力項目(リクエスト、アンカー)を表示します。-
リクエスト
に、APPLICATION_PROCESS=<Ajaxコールバックに作成したプロセス名>
(例: APPLICATION_PROCESS=FORM_DOWNLOAD)を入力します。 -
DBXFORM/DBXAP_UTILパッケージのリファレンスは帳票生成API PL/SQLリファレンスを参考にしてください。
文字変換帳票ファイルのダウンロード
文字変換帳票ファイル生成アプリケーションの実行
- 編集内容を保存した後アプリケーションを実行し、作成したページに遷移します。
帳票のダウンロード
ボタンをクリックすると、帳票ファイルがダウンロードされます。