Pentaho Reportingの最近のブログ記事

Pentahoでは、定型レポートから分析レポートまで様々なレポートを作成できますが、以下の関係がわかりづらいため、少し整理したいと思います。

1)レポートとデータ取得先の関係
2)レポートとレポート作成ツールの関係
3)データ取得先とデータ作成ツールの関係

p_20100826-01.JPG

以下に各レポートのサンプルを表示します。

<定型レポート>
ユーザーコンソールよりレポートデザイナーで事前に定義した定型レポートを表示しています。

p_20100826-02.JPG


<アドホックレポート>
ユーザーコンソールよりアドホックにレポートを作成する画面です。レポートフォーマットを選択し、表示アイテムをメタデータから選択しているところです。

p_20100826-03.JPG


<分析レポート>
ユーザーコンソールより分析レポートを作成しているところです。右側に表示されているアイテムがスキーマワークベンチで定義したOLAPキューブ(ディメンジョン、メジャー)の内容です。

p_20100826-04.JPG


<ダッシュボード>
ユーザーコンソールよりダッシュボードを作成しているところです。定型レポートなどの既存のソリューションファイルや分析レポート、FLASHチャートに表示するデータをメタデータと紐づけたものをアイテムとして、表示したいテンプレートに設定しています。パラメータも設定でき、絞り込んだデータを表示することができます。

p_20100826-05.JPG


★Have a nice Open Source Day★
KSK ソリューションズ Pentahoチーム
Pentahoエンタープライズ版の機能であるアナライザーレポート機能を使うと複雑なレポートが簡単に作成できます。作成したレポートは、グラフで見たり、保存して他のメンバーと共有したり、ExcelやPDF等にエクスポートしたりすることができます。実際にPentahoデモサイトで作成してみましょう!

ana11.jpgのサムネール画像ana3-3.jpgのサムネール画像
通常、レポートに表示するデータは
JDBCでデータベースに接続し、SQLで取得するのが一般的ですが、
例えば
欲しいデータを取得するためには一回のSQLでは難しい場合など、
PDI(ETL)を利用する方法もあります。


レポートデザイナーにて

Data Setsのところで
Pentaho Data Integrationを選択

053101.jpg


使用するktrファイルを指定
指定すると、作成したStepが表示されます
(ここではDataステップを選択しておきます)

053102.jpg

ここでは以前の記事で使っていたktrファイルをちょこっと変えたものを使ってます。
以前の記事はこちら

単純に職業名が入ったディメンジョンテーブルからある1つの値を取得するだけのETLです。
053103.jpg

以前の記事とは異なり、最後はダミー(Data)に変更してます。


ktrファイルを設定し、OKボタン押下で、
取得する項目が表示されます。
(ここでは職業ディメンジョンのIDおよび名称)

053104.jpg


次に
パラメータを設定。
(今回はテキストボックスにIDを入力し、該当する名称を取得するレポート)
パラメータの名称をItemとしておきます。

053105.jpg


データを取得するのはETLなので、
このItemで設定されている値をktrファイルに渡す設定をします。

以前の記事同様、Get System Infoにて引数を取得する方法で
ktrファイルを作成してあるため、この引数とItemを紐づけします。

Data Setsの設定にもどり
「Edit Parametar」を押下し、
パラメータで作成したItemを設定。

053106.jpgこれで完了。

ID=1は学生

053107.jpg

ID=5は公務員
053108.jpg

が表示されました。



単にIDを指定し、その名称を取得するだけのレポートですが、
ETLを使って、パラメータ(引数)も使って
取得することができました。

SQLが得意ではなく、ETLを使いこなせていれば
こういう方法もありですね。

私はなんとかSQLを駆使したい派ですが^^

★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム




レポートデザイナー3.0でレポートにパラメータを使用する為にはパブリッシュ時に作成されるxactionを編集し、プロンプト画面を作成する必要がありましたが、レポートデザイナー3.5からレポートはprpt形式となり、わざわざxactionを編集しなくてもレポートデザイナー内でプロンプトを作成出来るようになり大変使い易くなりました。
しかしながらレポートデザイナー内で作成したプロンプト画面は特定されている為、プロンプト画面とレポート表示画面を変えたい場合、プロンプトのレイアウトを変えたい場合などにはやはりxactionの使用が有効です。
そこで今回はxactionからのprpt起動方法を紹介したいと思います。

①まずレポートデザイナーで通常通りパラメータを使用したレポートを作成します。
regularreport.jpg

②次にデザインスタジオで新規にxactionを作成します。
Process inputsのinputにレポートに使用したパラメータ名と同じ名前でパラメータを作成します。
inputparam.jpg

Process inputsのresourceに作成したprptファイルを定義します。
resouce.jpg

Process Actionのprompt/Secure FilterにProcess Inputsで作成したパラメータを定義します。
definestoreparam.jpg

Process ActionsのRelationalにレポートで使用したクエリーを張り付け、パラメータの使用方法を
&{パラメータ名}→{PREPARE:パラメータ名}に変更します。
definequery.jpg

Process ActionsにPentaho Reportを定義します。Report Parametersにはレポートで使用したクエリー名を追加します。
definereport.jpg

Process OutputsにPentaho ReportのOutput Report Nameを追加し、xactionを保存します。
output.jpg

③レポートデザイナーでレポートを開き、作成したData setsを削除してExternalを追加します。作成したParametersも削除し、以下のように新たなパラメータを定義します。Name欄にはクエリー名を指定します。
param.jpg

④レポートを保存しユーザーコンソールからxactionファイルを起動するとprompt画面が表示され、
prompt.jpg

表示させたい物を選んでOKを押すとレポートが表示されます。
report.jpg

このようにxactionを使用することでprpt単体では制限されていたレポートの表示方法の幅が大きく広がります。

★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム
Pentahoレポートデザイナーには17種類のグラフが用意されていますがレポートの作成に関してグラフの選択は非常に重要です。
どのグラフを選択するかによりレポートの見易さ、効果度がまったく変わってきます。

例えば、グラフに使用したい値が一種類だけの場合は線グラフやエリアグラフを選択し、時間軸と選択した値の軸を使用するのが一般的です。
線グラフ.jpg

エリアグラフ.jpg


二つ以上の値を比較したい場合には線グラフ、エリアグラフに加え円グラフ、棒グラフなども有効です。
棒グラフ.jpg

円グラフ.jpg

またレポートデザイナー3.5から新たに追加されたレーダーチャートも2つ以上の値を比較する場合に使用しますが、特に項目間でのバランスを確認したい場合には非常に便利です。
レーダーチャート.jpg

今回紹介した以外にもバブルチャートやリングチャートなどさまざまなグラフがレポートデザイナーには用意されています。各グラフの特徴を抑えデータに合ったグラフを選択してください。

★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム

 先日Pentaho BI Suite3.5.2(英語版)がリリースされました。日本語版もリリースも予定しておりますので、もうしばらくおまちください。このバージョンアップに伴って、Pentaho Report Designerもバージョン3.6へアップグレードされています。

Report Designerの今バージョンでは、バグの修正、機能の改善、新機能の追加が行われました。

以下の新機能が追加されています。

1.使い安さ

・フィールドピッカー:   レポートにドラッグ・アンド・ドロップできるデータフィールドパレット

・フィールドとして利用できる環境変数

・要素を複数選択し、Style(スタイル)とAttributes(属性)エリアでまとめてプロパティを編集する。

・ページ設定ダイアログの機能追加(ポスター印刷)

・オフラインモード

・プラットフォームのダッシュボードモード:   report-urlにパラメータを追加することで、ダッシュボードモードを作動させる

・新しく追加された関数:   PARAMETERTEXT, PARSEDATE, MESSAGE, ISNA

 

2.豊富なパラメータ

・式のパラメータ:   Post processとDisplay Value

・ローカライズしないでStrinigsからDateへの変換をサポート

・SQL Dateタイプのサポート

・非表示パラメータ(ユーザーインタフェースに表示させないパラメータ)

・DateとNumberでの(WHERE句でのLIKE演算子など)緩やかな検証

・ユーザーインタフェース内で検証エラーを表示

 

3.多様なデータソース

・JDBCのダイナミックセキュリティ:  ロール、ユーザー名、パスワード

・SQL 、Mondrian 、OLAP4Jデータソースのランタイムセキュリティプロパティ

・アドホックデータソース:  OLAP4JとPentahoアナリシス

・Mondrianと OLAP4Jデータソースでクエリーをパラメータ化するために、${parameter}変数を使用可

・実行時にMDXクエリーを計算するための高度なMondrianとOLAP4Jデータソース

 

上記についてのスクリーンショットです。

・新しいページ設定ダイアログ

pagesetup.png

 

フィールドピッカー(データパレット)

floating data field selector.png

 

環境変数

environment variables.png

 

機能強化されたパラメータ

パラメータの設定ダイアログ

parameters.png

レポートでのパラメータ

pdi-parameters.png

 

★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム

 

 

 

 

 

Pentahoのクライアントツールの一つであるレポートデザイナーですが、バージョン3.5にアップグレードされてから大幅に機能が追加されています。その一方でメニューバーやプロパティの設定部分にずらりと英語が並ぶので、少々疲れてしまうかもしれません。

コミュニティエディションをお使いの方は、すべて英語で使いづらいと思われるかもしれません。Pentahoレポートデザイナー3.5の完全ローカライズは2010年春頃になります。それまで、英語を和訳しつつレポートデザイナーを使用することになります。以下に参考情報を記載します。

 

●通常の単語検索

まずメニューバーですが、Distribute(割り付け)、Preferences(設定)のように意味を知りたい言葉が1語のみの場合は、辞書サイトや検索エンジンで調べてIT用語の欄や記事を見ると意味が見つかります。しかし2語3語が連なっていると、訳を探すのが難しいかもしれません。

たとえば、

Row-Banding=各行ごとに交互に色をつけて、縞のようにする。主に行の境目を分かりやすくし、レポートを読みやすくするために使用。

Snap to Elements= 要素(タイトルラベルやチャートetc.)どうしを近付けるとマグネットのように端と端がくっついて整列しやすくなる機能。

これらの単語はIT分野での意味と日常語としての意味の両方を持っているので、正確な意味をとらえるのが難しくなります。

 

●プロパティの意味を調べる

次にレポートデザイナー右下にある英語だらけのプロパティの設定エリアですが、こちらは英語の知識よりもCSSの知識があれば問題ありません。チャートで使用するプロパティに、難解なものが含まれているのでいくつか紹介します。

まず、Attributeタブのプロパティですが、

start-angle=これは円グラフの開始角度を設定します。多くの方は時計で言うと12時方向から円グラフを作成されるかと思いますが、時折3時の方向から開始するものを見かけます。値は0~360の整数です。

counter-clockwise=反時計回りで円グラフがプロットされることを示しています。counter(反-)もclockwise(時計回り)もよく見かけますが、結局時計回りの円グラフにするには値をfalseにするので、「反時計回り、じゃない」といった意味合いになり少しややこしいかもしれません。デフォルトはfalseになっています。

スタイルタブの方も同様に検索すると大まかな意味が分かります。

Pentahoからローカライズ用ファイルが提供され次第、KSKソリューションズにてローカライズ作業を行う予定ですので、Pentahoレポートデザイナー3.5ユーザーの方は今しばらくお待ちください。


★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム

Report Designer3.0でプロンプトを作成するには、レポートを一度BIサーバーにパブリッシュし、作成されたXactionファイルをDesign Studioで編集する必要がありましたが
3.5ではプロンプトの作成からプレビューまですべてReport Designerの中で出来るようになりました。

Report Designer3.5でのプロンプトの作成方法を紹介します。

1.レポートを作成します。

initial report.jpg

 

2.プロンプトに表示させるリストのクエリーをデータエリアで作成し任意のクエリー名を付けます。ここではクエリー名にStore Listと名付けています。

storeListQuery.jpg

pormptList.jpg


3.レポートのクエリーにWHERE句を追加し、
プロンプトで選択した項目のみレポートに表示するようにします。
さらにプロンプトで複数の項目を選択できるようにIN句を使用します。
IN句の波括弧内には任意の変数名を記入します。

where.jpg

4.データエリアでパラメーターを追加しName欄にクエリーのIN句に指定した変数名(store_parm)、Query欄にプロンプトリスト用に作成したクエリーのクエリー名(Store List)を指定します。
parameter config.jpg

5.プレビューでレポートを確認するとレポート上部にプロンプトが追加されています。
以下のレポートではプロンプトでStore Aが選択されておりStore Aの内容のみがレポートに表示されています。
parameterized report.jpg
このようにReport Designer3.5には3.0に無かった便利な機能が追加されています。
 
★Have a nice Open Source Day★
KSKソリューションズ Pentahoチーム