Oracle Analytics Publisher：ピクセルパーフェクトレポートのチュートリアル

# はじめに
Oracle Analytics Publisher（**OAP**）は、Oracle Analytics Cloud（**OAC**）を構成するコンポーネントの一つです。
これまでは、BI Publisherという名前でした。いわゆる固定帳票を作成するツールです。
OAPを使用して、PDFレポートを作ってみたいと思います。

これが、できあがりのイメージです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/5818c729-8a45-e269-a97e-ba3d52ab74db.png)

# 1. データの準備
OAPは、Excelファイルをアップロードしたり、SQLを記述したり、OACのサブジェクト領域を使用したり、様々なデータソースを扱うことができます。
今回は、OACのデータセットを使ってPDFレポートを作ります。
使用するデータセットは、こちらのチュートリアルでも使用したものです。
- [Oracle Analytics Cloud：セルフサービス分析のチュートリアル](https://qiita.com/tyo38/items/b17af98dd1dc55936175)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/5ccb22e5-4c3d-d84a-453f-34b1750424a8.png)

# 2. データモデルの作成
クラシック・ホームを開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/40e1bda3-c9fa-06b4-f1de-4af74a25fbb2.png)
右上のアイコンをクリックし、「マイ・アカウント」を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f64f8998-de2f-c2dc-2809-de497d74667c.png)
「Publisherプリファレンス」タブに移動します。
レポートロケールとタイムゾーンを適切なものに設定し「OK」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f60cce0e-6404-7c50-38f2-59bbd7334494.png)
「作成」をクリックし、「データ・モデル」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ada3ef05-33fd-bffc-06e0-4a3a95eccb1b.png)
新規データセットを追加するため「＋」をクリックし、「DVデータ」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/e33bffe4-c658-44e4-0888-075e791c652a.png)
「Sample Order Lines」を選択し「次」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/1df35e4e-f0c3-ef14-0b3d-e8adc8f9293d.png)
「すべて選択」をチェックし「次」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/9ab8a566-067d-57e1-30a7-1d66f51b96d0.png)
何もせず、「終了」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/317eb94e-b988-ecc1-d898-2061625f77e4.png)
「データ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/8b2be587-aa4a-d868-896c-894866b413e7.png)
行を「200」にして、「表示」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/2b88b923-cb02-0c02-86f8-5d82e25ed00d.png)
続いて「サンプルデータとして保存」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/63715ff9-54de-0b6f-c5ce-d0a87e928b4c.png)
「OK」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/d4c0dca4-d458-1993-7baa-cf13fd11f56e.png)
保存アイコンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/b43e2aea-494b-cc48-7586-bab5baae33ac.png)
名前を付けて保存します。
今回は、共有フォルダに「ピクセルパーフェクト」というフォルダを作り「Data Model」という名前で保存しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/6d504fb9-7698-685c-f80b-f1a2bf0134c3.png)

# 3. レポートの作成
データモデルを開いた状態で「レポートの作成」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/e029ca61-b472-ea13-48dc-29b9909c9544.png)
または、「作成」メニューから「レポート」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/73d1b458-113b-a109-804b-4754f05d4620.png)
先程作成したデータモデルが選択されていることを確認します。
「作成」メニューから「レポート」をクリックした場合は、データモデルが自動的に選択されないので、先程のデータモデルを指定します。
「レポート・エディタの使用」を選んで「終了」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/c470ffd6-5643-ac62-ade3-406bd759dfdf.png)
同じフォルダに「Report」という名前で保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/db8e9ab3-5991-0ac3-ad3d-c424854150d5.png)
レイアウトの作成の「ヘッダーとフッター (横)」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/2671fb17-f0aa-1277-4136-faefadb944f6.png)
レイアウトエディタが起動します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/353f99be-6edd-73c2-ac53-c742a2f9fd18.png)

## 3.1 繰返しセクションの作成
左ペインの「コンポーネント」から「繰返しセクション」を右にドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/62a1f396-4b15-3f08-4acc-fad0da36c49f.png)
「要素」として「Product Category」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/b58a9496-c386-75f8-5a72-6c7fe801f5af.png)
これで、Producy Categoryの値ごとに繰り返されるセクションが作成されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/93b34883-5721-0406-4255-7e33f51318b3.png)
続いて、「レイアウト・グリッド」を繰返しセクションにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/2ef5fc87-19e3-9ab6-b28a-37cfa080238c.png)
行2、列2で「OK」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ffab39f5-9a6a-23a1-f854-ff3c9436ee87.png)
「データソース」を展開し、「Product Category」をレイアウトグリッドの左上のセルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/dbe4e8ed-7bef-42b7-e18f-b6992713152a.png)
フォントの種類やサイズを任意のものに変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/cd84e8ba-e5ae-3605-7d15-b7859584183a.png)

## 3.2 グラフの作成
「コンポーネント」から「チャート」をレイアウトグリッドの左下のセルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/99aa117e-f7bb-220b-ee68-8ec34dcc7bdf.png)
「チャート・タイプ」をクリックし、「棒」から「縦パーセント棒」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/811cb510-ffb6-b98f-52d5-08b1b7a626b2.png)
「データソース」を展開し、挿入したグラフをクリックして選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/2ea32829-eb40-2464-4599-ee49d704b901.png)
「ここに値をドロップ」に「Sales」をドラッグ＆ドロップします。
「ここに系列をドロップ」に「Customer Segment」をドラッグ＆ドロップします。
「ここにラベルをドロップ」に「Order Priority」をドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/dd6ef7ef-2611-4f9e-6d55-0881b4d15214.png)

## 3.3 ピボットの作成
「コンポーネント」から「ピボット・テーブル」をグラフの右のセルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ec5e5622-b068-2d56-5b92-70791f856011.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/7779ab1a-5b6c-39b3-729c-93dabe9dc8d1.png)
列に「Ship Mode」をドラッグ＆ドロップします。
行に「Product Sub Category」をドラッグ＆ドロップします。
データに「Sales」をドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/90827970-58ba-6e72-d253-19f65f7012f0.png)
「Sales」の書式設定を変更します。
「Sales」を選択した状態で、データの書式設定を「なし」から「小数のない数値」に変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/5280fe35-8446-de5a-f162-0431e95c3268.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/8b5249ab-f83e-376c-8dd2-43bac1217e72.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/54e94463-3e3e-c7ed-09a4-81e5bd72e14b.png)

## 3.4 ヘッダおよびフッタの作成
ヘッダにロゴを配置します。（ロゴ用の画像ファイルを準備しておきました）
![pp_logo.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/6734849f-6411-7e81-f2b8-0b1d48ef1b0a.png)
「コンポーネント」から「イメージ」をヘッダ領域にドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/0eaa78da-944c-83f6-b198-e64f4af9e005.png)
準備しておいた画像ファイルを指定しjます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ee4a4000-3448-5499-16fe-21ebc490f40f.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/251c7ad4-d85f-3138-28fc-4b811ce909a7.png)
次はフッタを設定します。
「コンポーネント」から「レイアウト・グリッド」をフッタ領域にドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/14c7dd91-66fb-5220-e17d-8b5918439065.png)
行2、列3のグリッドを挿入します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/dbf53b3d-173c-1b14-5c5e-3f5f8d116da5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/0260d351-fec6-2afc-17e8-62ae5c037505.png)
コントロールキーを押しながら、1行目のセル3つを選択します。
レイアウト・グリッド・セルから「選択したセルの結合」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/66a9ca7f-d915-a7e2-1191-0ff80305f48e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/b938d8c1-199c-daa7-70ea-1faf04745019.png)
「コンポーネント」から「テキスト・アイテム」を結合したセルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/5a186a48-0b80-b08d-0650-57f8eb734d06.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/a30d57fd-65b4-c3ea-5478-e9f3e90bf62a.png)
ダブルクリックして架空の会社名「株式会社ピクセルパーフェクト」と入力します。
文字列を右寄せします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/bf93bfc7-8ee1-045b-ae74-18090beaac60.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/880ef42b-5fb0-7126-12d1-62d22c764a37.png)
2つ目のテキスト・アイテムを下段中央のセルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/c458c1ef-ac7e-7b7a-c531-d20c3a84abc3.png)
ダブルクリックして「/」と入力します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/abbcbad5-eeb2-b93c-652c-d028843a3abd.png)
ドラッグして、下段のセルの幅を調整します。
「挿入」から「ページ番号」を下段左セルに、「合計ページ数」を下段右セルにドラッグ＆ドロップします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/155a2fd6-5855-ffec-2ce4-e7d742b9e52a.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/c684d789-6298-9463-8c91-db9bb0b20988.png)
繰返しセクションを選択し左ペインで「プロパティ」を表示します。
「改ページ」を「自動」から「ページ」に変更します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/da572291-39e5-0b2e-7057-fdf2380c54e2.png)
保存アイコンをクリックして、ここまでの内容を保存します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/dfaca979-432a-ff04-3ad4-1b3b7fd5bb4f.png)
「Layout1」という名前にしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/02e56fdf-7119-df6c-1abe-53da8cec7e65.png)
「戻る」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/4958cae1-48aa-22ef-a185-3b53dd1e0f2c.png)

# 4. 実行してみる
「レポートの表示」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/8003c664-dd46-c17f-cb82-3a14afcd2b71.png)

## 4.1 インタラクティブな実行
Product Categoryでグラフやピボットを切り替えることができます。
グラフの一部をクリックすると、クリックした箇所でピボットがフィルタされます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/f4bc814a-7d72-81bb-bf4d-ba7babcdec74.png)
表示形式を変更できます。「PDF」にしてみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/604fadf0-95f4-d0c3-2c3d-9c7f1650dea7.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/98cace68-e049-3353-1e81-d275dcca0d54.png)

## 4.2 出力形式の設定
歯車アイコンをクリックして「レポートの編集」を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/4e44762a-e2ff-a799-c78c-f6525328d228.png)
「リストの表示」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/9cb11734-ec00-6bd3-3799-2bdd760a78cf.png)
デフォルトのフォーマットや出力フォーマットを設定することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/0068a0e4-c86b-2fa8-ed7a-8f7db95e44bf.png)
変更したら「保存」します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/a5e2103a-d6ef-4cc8-e3dd-349221ee9c92.png)

## 4.3 スケジュール実行
再度レポートを表示します。
歯車アイコンをクリックします。
「スケジュール」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/d5268805-2266-c0b0-972c-e8540a01254f.png)
「出力」タブに移動し宛先を追加します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/0e5707d2-6506-94b7-f0aa-09f6e55ac1f0.png)
今回は、オブジェクトストレージに配信します。

:::note info 
宛先は、管理者が事前に登録しておく必要があります。
:::

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/982521a9-c31d-d32a-7021-1c1b03457216.png)
スケジュールを設定し、「発行」します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/1d2ed6bf-a366-5524-0ae8-64ddc7d0bfac.png)
レポートジョブ名は「Job」とします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/809134c4-aa78-2e16-851b-e931c8598ea9.png)
実行結果は、「ジョブ履歴」から確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/b2958164-021c-3de8-8ea7-33a0a83beda2.png)
ジョブ名をクリックして、レポートを表示できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/ce1e5ae7-fac0-c4b7-ec93-36b01bd40dbe.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/72ea6157-d724-9ec5-4a0a-5b569b4da2ad.png)
同じレポートが、指定したオブジェクトストレージに配信されているのがわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2342206/b972184c-3a19-c61f-4ef9-41e1ff6013e5.png)


# おわりに
簡単なPDFレポートを作ってみました。いかがでしたでしょうか？
印刷を前提としたレポートの場合、ブラウザの印刷機能に頼ると思うように印刷できないこともあります。
そういったときに、OAPを使うとレイアウトした通りに出力することが可能です。
PDF以外にもExcel形式やPowerPoint形式でも出力できるので、ぜひ試してみてください。

# 参考情報
- [WordでピクセルパーフェクトレポートのRTFテンプレートを作成するチュートリアル](https://qiita.com/tyo38/items/0851d7e3359fe251cbc0)