コンテンツにスキップ

BI Publisher(データモデル・レイアウト・バースティング・スケジュール)

BI Publisher は、Fusion に組み込まれた帳票ツールです。公式ドキュメントでは Oracle Analytics Publisher とも表記されます。請求書・支払通知・法定帳票のような ピクセル・パーフェクト な帳票と、大量データの出力・配信を得意とします。

カタログ上のオブジェクトは次のとおりです。

オブジェクト 拡張子(カタログ上) 役割
データモデル .xdm データセット、パラメータ、値リスト、トリガー、バースト定義を持つ
レポート .xdo データモデルを参照し、レイアウトと出力の設定を持つ
サブテンプレート ― 複数のレイアウトで共有する書式部品(ヘッダー・フッターなど)
スタイル・テンプレート ― フォントや表の書式を統一するためのテンプレート

レポートの実行経路は 3 つあります。

BIP レポートの実行経路
1. オンライン実行:カタログでレポートを開く → その場で表示・ダウンロード
2. BIP のスケジュール:レポートの Schedule → レポート・ジョブ → 出力・配信(メール・FTP など)
3. ESS ジョブ:ESS ジョブ定義(BIPJobType)→ スケジュール済プロセスから実行 → 出力

業務ユーザーが日常的に使う帳票は、3 の ESS ジョブにするのが一般的です。スケジュール済プロセスの画面からパラメータを指定して実行でき、権限も ESS の仕組みで管理できます。

データモデルは、データモデル・エディタで作成します。カタログの Create > Data Model を選ぶと開きます。

データセットは「データをどこからどう取るか」の定義です。主な種類は次のとおりです。

種類 内容 Fusion での使いどころ
SQL Query データソースに SQL を発行する 最もよく使う。Fusion のテーブルを直接照会
Analysis OTBI の分析をデータソースにする サブジェクト領域で取れる項目を帳票にする
Web Service Web サービスの応答をデータにする 外部サービスの値を帳票に含める
XML/Excel/CSV ファイル ファイルのデータを使う テストデータ、補助的なマスタ
HTTP(XML フィード) HTTP で取得した XML を使う 限定的

SQL Query データセットの要点は次のとおりです。

  1. Standard SQL と Non-standard SQL:通常の SELECT は Standard SQL を選びます。Standard SQL は OK を押したときに検証され、バインド変数があればパラメータの作成を促されます。プロシージャ呼出し、REF カーソル、無名ブロックなどは Non-standard SQL として扱われ、データ構造タブにメタデータが表示されません。
  2. バインド変数::P_LEDGER_ID のように書くと、同名のパラメータが作成されます。複数値のパラメータは IN (:P_SOURCE) の形で受けます。
  3. 字句参照(Lexical Reference):&P_WHERE のように書き、実行時に SQL の一部を置き換えます。公式ドキュメントでは、字句参照は Fusion Applications のアプリケーションに対するクエリでのみサポートされるとされています。
  4. 条件付きクエリ:$if{ ... }$elseif{ ... }$else{ ... }$endif$ の形で、パラメータの値によって実行する SQL を切り替えられます。
  5. Query Builder:SQL を書かずにテーブルを選んで結合できますが、1 クエリで選べる列は 60 列までです。複雑な SQL はテキストで直接書きます。

Analysis データセットでは、分析のパラメータと値リストが引き継がれます。分析のフィルタ変数には既定値が必要で、既定値のないプレゼンテーション変数を含む分析はデータソースにできません。グループ・ブレークやデータ・リンクは使えず、Time Out(秒)で取得の待ち時間を指定します。

パラメータは、実行時に利用者が指定する条件です。値リスト(LOV)は、パラメータの選択肢を SQL または固定値で定義します。

項目 内容
パラメータの型 テキスト入力、メニュー(値リストから選択)、日付 など
複数選択 複数の値を選ばせる場合に設定。SQL は IN (:P_X) で受ける
すべて選択(Can Select All) 「すべて」を許可する。NULL を渡すか、すべての値を渡すかを選べる
既定値 実行時の初期値。全件実行を防ぐために設定する
値リストの種類 SQL クエリ、固定値

「すべて選択」で NULL を渡す設定にした場合は、SQL 側で (:P_SOURCE IS NULL OR source = :P_SOURCE) のように NULL を扱う必要があります(Oracle BI Server に渡す場合も、公式に NULL の扱いへの注意があります)。複数選択との組合せの書き方は BI Publisher の SQL 実践 を参照してください。

イベント・トリガーは、データモデルの処理の前後などで、データベースの処理(PL/SQL)を呼び出す仕組みです。データの取得前に実行するもの(Before Data)と、取得後に実行するもの(After Data)、スケジュール実行の条件判定に使うもの(スケジュール・トリガー)があります。

Fusion(SaaS)では、利用者が Fusion のデータベースに独自の PL/SQL パッケージを作成することはできません。そのため、オンプレミスの BI Publisher で行われていた「トリガーで一時表を作る・更新する」といった設計はそのまま持ち込めません。トリガーで実現したい処理は、SQL での集計や、OIC などの外部処理で代替できないかを先に検討します。使える範囲はリリースにより異なるため、公式ドキュメントで確認してください。

バースト(Bursting)は、1 回の実行結果を 分割キー(Split By) で分け、宛先ごとに別の出力・配信を行う機能です。仕入先ごとの支払通知、顧客ごとの請求書送付などに使います。

設定手順は次のとおりです。

  1. データモデル・エディタのコンポーネント・ペインで Bursting を選び、Create Bursting でバースト定義を作ります。
  2. Name、Type(SQL Query)、配信情報を持つ Data Source を指定します。
  3. Split By(データを分割する要素)と Deliver By(書式と配信を決める要素)を選びます。
  4. 配信情報を返す SQL(配信クエリ)を書きます。
  5. レポートの Report Properties で Enable Bursting を選びます。

配信クエリは、宛先 1 件につき 1 行を返し、次の列名(別名)を使います。

列 内容
KEY Deliver By の要素と一致させるキー。"KEY" のように二重引用符で囲む
TEMPLATE 適用するレイアウトの 名前(ファイル名ではない)
LOCALE/OUTPUT_FORMAT テンプレートのロケール(例:ja-JP)と出力形式(pdf・xlsx・csv など)
DEL_CHANNEL 配信チャネル:EMAIL、FAX、FTP、PRINT、WCC、WEBDAV
PARAMETER1〜PARAMETER10 チャネルごとの設定。メールなら宛先・CC・差出人・件名・本文・添付の有無など
バースト配信クエリの例(仕入先ごとにメール送付)
SELECT
v.vendor_id AS "KEY",
'Payment Advice' AS template, -- レイアウト名(例)
'ja-JP' AS locale,
'pdf' AS output_format,
'EMAIL' AS del_channel,
v.email_address AS parameter1, -- 宛先
NULL AS parameter2, -- CC
'ap@example.com' AS parameter3, -- 差出人
'支払通知のご案内' AS parameter4, -- 件名
'添付のとおりお支払いします。' AS parameter5, -- 本文
'true' AS parameter6 -- PDF を添付する
FROM xx_payment_notice_recipients v -- 架空の名前(説明用)

上の例の xx_payment_notice_recipients は説明用の架空の名前です。Fusion では独自のテーブルを作れないため、実際には仕入先のマスタなど既存のテーブルから、データセットと同じキーで宛先を返す SQL を書きます。FTP/SFTP は PARAMETER1 がサーバー名、PARAMETER4 がリモート・ディレクトリ、PARAMETER5 がファイル名、PARAMETER6 が true で SFTP です。管理者が登録した FTP サーバー設定を使う場合は、ユーザー名(PARAMETER2)とパスワード(PARAMETER3)を指定しません。

バーストには次の制約があります。

  • データモデルのグローバル関数は、分割後の XML に含められません。
  • OUTPUT_FORMAT に Interactive(対話型表示)は使えません。
  • 出力ファイル名(OUTPUT_NAME)は 100 文字未満にします。

レイアウトは、データモデルが返す XML をどの形式で見せるかを決めるテンプレートです。

形式 作り方 向いている帳票
RTF テンプレート Word と Template Builder(アドイン)で作成 請求書・通知書など文書型の帳票。最も一般的
Excel テンプレート Excel ファイルに名前定義とマッピングを設定 経理担当が Excel で加工する一覧表
eText テンプレート 表形式の定義で固定長・区切りファイルを生成 銀行・EDI 向けの電子ファイル
PDF テンプレート 既存の PDF フォームのフィールドに値を埋める 決まった様式の届出書
レイアウト・エディタ ブラウザ上でドラッグ&ドロップ 簡単な一覧・対話型表示
XSL スタイルシート XSL で変換を記述 XML・HTML など特殊な出力

1 つのレポートに複数のレイアウトを登録し、既定のレイアウトと出力形式(PDF・Excel・CSV・テキストなど)を選べます。日本語の帳票では、フォントの埋め込みや改ページ位置を本番相当のデータで確認します。

レポート・ジョブ(BIP のスケジュール)

Section titled “レポート・ジョブ(BIP のスケジュール)”

カタログでレポートの Schedule を選ぶと、レポート・ジョブを作成できます。

  1. パラメータの値を指定します。
  2. 出力(レイアウト、出力形式、ファイル名)を設定します。
  3. 配信先を追加します(メール、FTP、コンテンツ・サーバー、プリンタなど)。
  4. 実行頻度(1 回、日次、週次、月次など)を設定します。
  5. 必要に応じて完了・失敗時の通知を設定して送信します。

ジョブの状態と出力は、レポート・ジョブ履歴で確認します。バースト定義のあるレポートは、スケジュール時にバーストを使うよう指定します。

配信先 用途 注意点
メール 担当者・取引先への送付 添付サイズと送信元アドレスの設定を確認
FTP/SFTP 他システム・銀行へのファイル連携 接続先サーバーは管理者が登録する。SFTP を推奨
コンテンツ・サーバー(WebCenter Content) Fusion の UCM への保存(他プロセスの入力ファイルなど) セキュリティ・グループとアカウントの指定が必要
WebDAV WebDAV サーバーへの保存 認証方式(basic/digest)を指定
プリンタ 帳票の印刷 プリンタ・グループとプリンタを管理者が登録

配信先のサーバー(メール・FTP・プリンタなど)は、BI Publisher の管理画面で管理者が登録します。開発環境と本番環境で接続先が違う場合は、移送後に配信先の設定を必ず見直します。

カタログと移送(アーカイブ)

Section titled “カタログと移送(アーカイブ)”

BIP のレポートとデータモデルも OTBI と同じカタログに保存されます。

  1. 保存場所:カスタムのレポート・データモデルは /Shared/Custom 配下(または /Shared 直下の独自フォルダ)に保存します。事前定義のフォルダは変更できず、変更してもアップデートで失われます。
  2. アーカイブ(Archive):フォルダやオブジェクトをアーカイブ・ファイルにまとめてダウンロードします。権限やタイムスタンプを含めるかを選べます。
  3. アーカイブ解除(Unarchive):移送先の環境でアーカイブ・ファイルをアップロードし、指定したフォルダに展開します。
  4. 個別のダウンロード/アップロード:レポートやデータモデル単位でのダウンロード・アップロードもできます。少数の修正を移すときに便利です。
移送の流れ(例)
開発環境:/Shared/Custom/Financials/GL をアーカイブ
→ ファイルを構成管理(Git など)に保管
→ テスト環境:/Shared/Custom/Financials に Unarchive
→ 配信先・ESS ジョブ定義・ロールを確認
→ 本番環境へ同じ手順で移送

ESS ジョブ定義はカタログに含まれないため、カタログの移送とは別に、移送先の環境で作成するか設定データの移行手段で移す必要があります(移行手段は公式ドキュメントで確認してください。設定データの移行の考え方は FSM とセットアップデータの移行 を参照)。

BIP レポートをスケジュール済プロセスとして実行できるようにする手順です。

  1. 設定および保守(Setup and Maintenance)で、Manage Enterprise Scheduler Job Definitions and Job Sets for Financial, Supply Chain Management, and Related Applications タスク(Application Extensions などの機能領域)を開きます。
  2. Manage Job Definitions タブで作成アイコンを押し、次の項目を入力します。
項目 設定値
Display Name 利用者がスケジュール済プロセスで選ぶ名前(例:仕訳明細レポート)
Name 英数字のみ(空白・記号不可)。例:XxGlJournalDetail
Job Application Name FscmEss(Financials・SCM の場合)
Job Type BIPJobType(他の型は選ばない)
Report ID Shared Folders 配下のパスを .xdo 付きで指定。例:Custom/Financials/GL/XX_GL_JOURNAL_DETAIL.xdo
Default Output Format 既定の出力形式(PDF・Excel など)
  1. Enable submission from Enterprise Manager は 選択しません。Enable submission from Scheduled Processes は選択したままにします。
  2. Parameters サブタブで、データモデルのパラメータと 同じ順序 でパラメータを作ります(データモデルが P_START_DATE、P_END_DATE、P_CURRENCY なら、ジョブ側も Start Date、End Date、Currency の順)。
  3. 日付パラメータは、BIPJobType の場合 yyyy-MM-dd を選び、データモデル側も同じ形式にします。
  4. 値リストが必要なパラメータは、Manage List of Values Sources タブで作った値リスト・ソースを指定します。
  5. 保存します。

ジョブ定義を作成すると、ジョブ定義と同じ名前に Run を付けた権限 が自動で作られます。この権限をカスタムロールに付与して、実行できる利用者を限定します。また、ジョブ定義を作成するユーザーの名前に空白が含まれていると、他のユーザーの実行時にエラーになることがあるため注意します。

事前定義レポートのカスタマイズ方法

Section titled “事前定義レポートのカスタマイズ方法”

Oracle が提供する事前定義レポート(例:仕訳レポート、試算表、請求書の帳票)を修正したい場合は、次の方針で進めます。

  1. 元のレポートは変更しない:事前定義のフォルダは変更できず、権限も変えられません。アップデートで上書きされます。
  2. /Shared/Custom にコピーする:事前定義と同じフォルダ階層(例:/Shared/Custom/Financials/...)にコピーを作ると、どの事前定義レポートの改修版か分かりやすくなります。カタログには事前定義レポートのコピーを Custom フォルダに作る操作(Customize)が用意されています。
  3. レイアウトだけを変えるなら、データモデルは事前定義のまま参照する:アップデートでデータモデルが改善されても追随できます。
  4. データモデルを変えるなら、データモデルもコピーする:コピーしたデータモデルをレポートから参照し直します。この場合、アップデートでの改善は自動では反映されません。
  5. ESS ジョブとの関係を確認する:事前定義のスケジュール済プロセスから実行したときに、元のレポートとカスタム版のどちらが使われるかを、テスト環境で必ず確認します(挙動の詳細はリリースにより異なる可能性があるため、公式ドキュメントで確認してください)。新しいジョブ定義を作る場合は、Report ID にカスタム版のパスを指定します。

落とし穴とベストプラクティス

Section titled “落とし穴とベストプラクティス”

ベストプラクティスは次のとおりです。

  1. データモデルとレイアウトを分けて設計・レビューする:データモデルは SQL レビュー、レイアウトは業務担当のレビュー、と役割を分けます。
  2. データモデルは小さく保つ:1 つのデータモデルに多用途を詰め込まず、帳票ごとに必要な列だけを返します。
  3. 大量出力はスケジュール実行にする:オンライン実行は画面の待ち時間とサイズの制約を受けます。
  4. 公式のベストプラクティスを確認する:Oracle は SaaS 環境での BI Publisher のベストプラクティスを My Oracle Support(Doc ID 2145444.1「Oracle BI Publisher Best Practices for SaaS Environments」)で公開しています。
  5. 命名規則を決める:XX_<モジュール>_<内容> のような接頭辞で、カスタムのレポート・データモデル・ジョブ定義をそろえます。
  • 対応する試験:GL 模擬テスト の財務レポート関連の分野(BIP は「大量の定型帳票・ピクセル・パーフェクトの帳票」を担うツールとして位置づけられます)。
  • BIP レポートは ESS(スケジュール済プロセス)から実行して最新データを出力する、という位置づけを押さえます。
  • データモデル(データセット・パラメータ・値リスト・トリガー・バースト定義)とレイアウト(RTF・Excel・eText など)の役割の違いを説明できるようにします。
  • ESS ジョブ化のキーワード:BIPJobType、Report ID(.xdo を含むパス)、パラメータの順序、Run 権限の自動作成。

本サイトは学習目的で個人が作成した非公式の教材であり、Oracle Corporation およびその関連会社とは関係ありません。内容の正確性は保証しません。最新の仕様・試験範囲は必ず公式ドキュメントと Oracle University の情報で確認してください。

模擬テストの問題は公開されている出題範囲(Exam Topics)と公式ドキュメントをもとに独自に作成したもので、実際の試験問題ではありません。

Oracle、Java、MySQL は Oracle Corporation およびその子会社、関連会社の米国およびその他の国における登録商標です。その他の製品名・会社名は各社の商標です。

© 2026 Fusion ERP 実装ラボ