Pentaho-quick-guide
ペンタホ-概要
Pentahoレポートとは何ですか?
Pentaho Reportingは、リレーショナルおよび分析レポートを作成するためのスイート(ツールのコレクション)です。 Pentahoを使用すると、複雑なデータを意味のあるレポートに変換し、それらから情報を引き出すことができます。 Pentahoは、HTML、Excel、PDF、テキスト、CSV、xmlなどのさまざまな形式のレポートの作成をサポートしています。
Pentahoは、SQLデータベース、OLAPデータソース、さらにはPentaho Data Integration ETLツールを含むさまざまなデータソースからデータを受け入れることができます。
ペンタホの特徴
Pentaho Reportingには、主にReporting Engine、Report Designer、Business Intelligence(BI)Serverが含まれています。 次の機能が搭載されています-
- レポートデザイナー-ピクセルパーフェクトレポートの作成に使用。
- メタデータエディター-ユーザーフレンドリーなメタデータドメインをデータソースに追加できます。
- Report DesignerおよびDesign Studio -レポートの微調整およびアドホックレポートに使用されます。
- * PentahoユーザーコンソールWebインターフェイス*-レポートの管理とビューの分析に簡単に使用します。
- アドホックレポートインターフェイス-簡単なレポートを設計するための段階的なウィザードを提供します。 出力形式には、PDF、RTF、HTML、およびXLSが含まれます。
- 複雑なスケジューリングサブシステム-ユーザーが特定の間隔でレポートを実行できるようにします。
- メール-ユーザーは公開されたレポートを他のユーザーにメールで送信できます。
- 接続性-レポートツールとBIサーバー間の接続性。これにより、コンテンツをBIサーバーに直接公開できます。
ペンタホ-インストール
ここで、Pentaho Reporting Designerをインストールして構成する方法を学びましょう。
前提条件
Pentaho ReportingエンジンにはJava環境が必要です。 したがって、Pentaho Reportingをインストールする前に、システムにJavaがあることを確認してください。 作業しているプラットフォームに基づいて、次の表のコマンドを使用して、Javaインストールを確認します。
OS | Command | Output |
---|---|---|
Windows |
Open command prompt: \> java -version a |
Javaバージョン "1.7.0_60" Java(TM)SEランタイム環境(ビルド1.7.0_60b19) Java HotSpot(TM)64ビットサーバーVM(ビルド24.60-b09、混合モード) |
Linux |
Open terminal: $ java –version a |
Javaバージョン "1.7.0_60" OpenJDKランタイム環境(rhel-2.3.10.4.el6_4x86_64)OpenJDK 64ビットサーバーVM(ビルド60.7-b01、混合モード) |
Mac OS |
Open terminal: $ java –version a |
Javaバージョン "1.7.0_60" Java(TM)SEランタイム環境(ビルド1.7.0_60b19) Java HotSpot(TM)64ビットサーバーVM(ビルド24.60-b09、混合モード) |
システムにJavaがインストールされていない場合は、http://www.finddevguides.com/java/java_environment_setup [Download and Install Java]を使用して同じものをダウンロードしてインストールします。
Pentaho Reportingをダウンロードする
次のリンクを使用して、Pentaho Reporting Designerの最新バージョンをダウンロードします。 このチュートリアルでは、バージョン3.7.0を使用しています。
OS | URL link for download Pentaho Report Designer |
---|---|
Windows | Pentaho Report Designer 3.7 for Windows |
Linux | Pentaho Report Designer 3.7 for Linux |
Mac OS | Pentaho Report Designer 3.7 for Mac OS |
Pentaho Reportingをインストールする
ファイルをダウンロードすると、 prd-ce-3.7.0-stable という名前のPentaho Reporting Designerのアーカイブファイルが見つかります。 そのアーカイブは、次の表の説明に従って抽出する必要があります。
OS | Installation Instructions |
---|---|
Windows |
|
Linux |
|
Mac |
|
データベースドライバーのインストール
Pentaho Reporting Designerでは、リレーショナルレポートを生成するためにデータベース接続が必要です。そのため、データベースと通信するにはJDBCドライバーが必要です。 デフォルトでは、PentahoはMySQL、H2、HypersonicSQL、Hiveなどのさまざまなデータベースをサポートするために、さまざまなベンダーのJDBCドライバーを提供しています
すべてのデフォルトのデータベースドライバーは、Pentaho Reporting Designerの*/lib/ディレクトリ*にあります。 他のデータベースを使用する場合は、それぞれのJDBCドライバーをダウンロードして、Pentaho Reporting Designerの/lib/ディレクトリにコピーします。 それ以外の場合は、JDKに付属するJDBC-ODBCブリッジドライバーを介してODBCドライバーを使用できます。このブリッジドライバー(JDBC-ODBC)はすべてのデータベースサーバーに適しています。
このチュートリアルでは、MySQLデータベースサーバーを使用しており、それぞれのドライバーは、Pentaho lib(Pentaho Reporting Designerの/lib/ディレクトリ)ファイルと共に既にダウンロードされています。
追加のフォントをインストールする
Pentaho Reportingは、異なるフォントを使用してレポート内にテキストを表示します。 PDFファイルを生成する場合、Pentaho Reporting Engineは物理フォントファイルにアクセスする必要があります。 レポートエンジンは、システムに依存するフォントパスを検索して、使用可能なすべてのフォントを見つけます。 これらのフォントに加えて、Javaランタイム環境では、Javaおよびオペレーティングシステムのバージョンに応じて、追加のフォントが提供される場合があります。
フォントが埋め込まれたPDFドキュメントを作成する場合は、レポートエンジンで物理的にアクセス可能なフォントのみを使用するようにしてください。
オペレーティングシステムに関係なく、 JRE/lib/fonts/ にあるすべてのフォントファイルは、すべてのエクスポートで常に使用できます。
ペンタホ-ナビゲーション
この章では、Pentahoで利用可能なユーザーインターフェイスと、それらをナビゲートする方法について簡単に紹介します。
ようこそ画面
ようこそ画面には、さまざまな種類のレポートを作成する2つの方法があります。 これらの2つのオプションは、*レポートウィザード*および*新しいレポート*です。
- レポートウィザード-新しいレポートの作成手順を示す、使いやすい4つのステップのプロセスを提供します。
- 新しいレポート-このオプションを選択すると、要件に基づいてカスタマイズされたレポートを作成できます。
Pentahoには、特定のレポートデザイナーの使用方法を理解するのに役立つサンプルレポートのセットがあります。 次のスクリーンショットは、Pentahoのウェルカムページを示しています。
メインツールバー
メインツールバーはウィンドウの上部にあります。 次のスクリーンショットをご覧ください。最大化されたボックスがメインのトールバーです。 新しいファイル、ファイルを開く、ファイルを保存、レポートを発行、データソースを追加、レポートを実行、オブジェクトを選択、元に戻す、やり直し、要素のコピー、要素のコピー、要素の貼り付け、選択した要素の削除を実行するボタンが含まれています、およびフィールドセレクターパレットを切り替えます。
レポートワークスペース
ワークスペースは、レポートを設計できる主な作業領域です。 次のスクリーンショットをご覧ください。中央の白い領域がワークスペースです。 ページヘッダー、レポートヘッダー、詳細、レポートフッター、ページフッターの5つのバンドに分かれています。
- ページヘッダー-ここでは、すべてのレポートページの上部に印刷するのに適した任意のタイプのデータを使用できます。 動的な値や改ページは許可されません。
- レポートヘッダー-上から2番目のバンドはレポートヘッダーです。 レポート要素が含まれています。 レポートごとに1回、つまりレポートの最初のページに表示されます。
- 詳細-レポートデータのほとんどがこの領域に表示されるため、詳細バンドはページの最大部分です。
- レポートフッター-レポートヘッダーと同様に、レポートフッターはレポートごとに1回、つまりレポートの最後のページに表示されます。
- ページフッター-最後のバンドは、レポートの各ページの絶対下部に表示されるページフッターです。
さまざまなレポート要素のグループを作成することもできます。 各グループには、ワークスペースに独自のヘッダーバンドとフッターバンドがあります。
構造ペイン
構造タブは、レポートデザイナの右上のセクションにあるデータタブとペインを共有します。 次のスクリーンショットをご覧ください。レポートワークスペースに含まれるすべての要素の正確な階層を示します。
データペイン
データペインでは、データソースを追加し、各レポートの個々のクエリ、関数、およびパラメーターを表示できます。 ペインの上部にある3つのボタンは、それぞれ新しいデータソース、関数、およびパラメーターを追加するためのものです。
- データソース-現在のレポートに定義したすべてのデータソースとクエリがここにリストされます。 新しいデータソースを追加する場合は、左端のボタン(黄色の円柱)を右クリックして[追加]をクリックします。
- 関数-レポートに追加したすべての関数(数学および条件付き)要素がこのカテゴリにリストされます。 (f〜x〜)ボタンをクリックして、関数を追加できます。
- パラメータ-レポートにパラメータを追加できます。これにより、レポートリーダーは出力のコンテンツをカスタマイズできます。
次のスクリーンショットをご覧ください。
スタイルペイン
スタイルペインには、構造ペインの特定のアイテムのすべての視覚的および位置的なスタイルオプションが表示されます。 構造要素をクリックすると、スタイルペインの構成が調整され、使用可能なすべてのスタイルプロパティがグループごとに一覧表示されます。 次のスクリーンショットをご覧ください。
属性ペイン
属性ペインには、すべての低レベルプロパティと、構造ペインの特定のアイテムの入力および出力オプションが表示されます。
パレット
パレットには、レポートの作成に使用できるすべての要素が含まれています。 要素を追加するには、レイアウトバンドをクリックして選択し、パレットから選択したバンドに要素をドラッグアンドドロップします。 次の表で、各レポート要素の役割について説明しました。
Element icon | Element name | Description |
---|---|---|
Label | Label | A static text string. It cannot change dynamically. |
Text-Field | Text-Field | A Textual report element and changed dynamically based on the query. |
Number Field | Number-Field | Displays dynamic numerical data from a query. |
Date Field | Date-Field | Handles date information form a query. |
Message | Message | An element that combines multiple static and dynamic report elements. |
Resource label | Resource-label | Static text string that maps to a resource bundle |
Resource-Field | Resource-Field | Dynamic text string that maps to a resource bundle, allowing you to localize any database field. |
Resource Message | Resource - Message | Dynamic text string that concatenates data from multiple types, and dynamically maps to a resource bundle. |
Image Field | Image-Field | A reference to an image stored in a database. |
Image | Image | A static image embedded into a report. |
Ellipse | Ellipse | A vector graphical element in the shape of eclipse. |
Rectangle | Rectangle | A vector graphical element in the shape of rectangle. |
Horizontal Line | Horizontal-Line | A vector graphical line, drawn horizontally. |
Vertical Line | Vertical-Line | A vector graphical line, drawn vertically. |
Survey Scale | Survey-Scale | A simple sliding scale chart element. |
Chart | Chart | A chart or graph that shows your query results graphically. |
Simple Barcodes | Simple-Barcodes | A barcode chart element. |
Bar Sparkline | Bar-Sparkline | A Bar Sparkline chart element. |
Line-Sparkline | Line-Sparkline | A line Sparkline chart element. |
Pie Sparkline | Pie-Sparkline | A Pie Sparkline chart element. |
Band | Band | A method of grouping elements. |
Sub Report | Sub-Report | An element that references another report. |
Table Of Content | Table-Of-Content | A table of content report element. |
Index | Index | An Index report element. |
次のスクリーンショットをご覧ください。左側の強調表示されたボックスは、レポート要素のパレットです。
Pentaho-データソースとクエリ
この章では、例を使用してPentaho Reporting Designerの使用方法を学習します。 従業員データベースに関するレポートを作成して、すべての従業員の概要をすばやく作成します。 データソースを追加し、Pentaho Designerにクエリを渡すことにより、最初のレポートを作成します。
Pentaho Report Designerを使用する前に、 employeedb という名前のデータベースを作成し、そのデータベースに次のクエリを使用して employee という名前のテーブルを作成します。
次のレコードをテーブルに挿入します。
Id | Name | Designation | Department | age |
---|---|---|---|---|
1201 | 'satish' | 'writer' | 'Tuto_Write' | 24 |
1202 | 'krishna' | 'writer' | 'Tuto_Write' | 26 |
1203 | 'prasanth' | 'php developer' | 'Tuto_develop' | 28 |
1204 | 'khaleel' | 'php developer' | 'Tuto_develop' | 29 |
1205 | 'raju' | 'HTML developer' | 'Tuto_develop' | 24 |
1206 | 'javed' | 'HTML developer' | 'Tuto_develop' | 22 |
1207 | 'kiran' | 'Proof Reader' | 'Tuto_Reader' | 28 |
1208 | 'pravenya' | 'Proof Reader' | 'Tuto_Reader' | 30 |
1209 | 'mukesh' | 'Proof Reader' | 'Tuto_Reader' | 28 |
1210 | 'sai' | 'writer' | 'Tuto_writer' | 25 |
1211 | 'sathish' | 'graphics designer' | 'Tuto_designer' | 26 |
1212 | 'viswani' | 'graphics designer' | 'Tuto_designer' | 24 |
1213 | 'gopal' | 'manager' | 'Tuto_develop' | 29 |
1214 | 'omer' | 'manager' | 'Tuto_writer' | 32 |
1215 | 'shirjeel' | 'manager' | 'Tuto_Reader' | 32 |
テーブル内に含まれるデータを操作する場合、最良の選択はSQLを使用することです。 ただし、データに基づいてレポートを作成する場合は、Pentaho Reportingが最適なオプションです。 私たちのタスクは、PentahoレポートデザイナーツールにSQLクエリを渡し、それぞれのフィールド(レポートに表示される)を選択して、レポートシートの詳細に表示することです。
さらに先に進む前に、Pentahoで利用できるすべてのナビゲーションオプション(前の章で説明)に精通していることを確認してください。 データソースができたので、さらに先に進み、Pentahoを使用して専門的なレポートを生成する方法を理解してみましょう。
Pentahoを使用してレポートを生成する手順
レポートデザインウィザードを使用せずに最初からレポートを作成するには、以下の手順に従います。
ステップ1:新しいレポートを作成する
ようこそペインで[新しいレポート]をクリックするか、[ファイル]→[新規]に移動して、新しいレポート定義ファイルを作成できます。
ステップ2:データソースを追加する
右側の構造ペインには、レポートの視覚要素が表示されます。 データソースの定義は[データ]タブにあります。レポートデータの送信元と、レポート処理中にこのデータを処理する方法を定義できます。
通常、レポートには、データソースから提供されたデータが表形式で表示されますが、レポート定義では、レポートのフォーマットまたは印刷方法が定義されます。 次のスクリーンショットに示すように、*構造ペイン*から*データタブ*を選択します。
[データ]タブで、[データセット]を右クリックし、[JDBC]を選択してデータソースを追加します。 通常、オプションのリストでは、要件に基づいて他のオプションを選択できます。 つまり、データソースとしてXMLファイルを使用している場合は、リストからXMLオプションを選択します。 次のスクリーンショットをご覧ください。 ここでは、JDBCオプションを選択して、データベースをデータソースとして追加しています。
データソースとしてJDBCオプションを選択すると、次のスクリーンショットに示すようなダイアログボックスが表示されます。
データソースにMySQLデータベースを既に選択しているため、指定されたスクリーンショットのダイアログボックスの左側のパネル(ポインター「1」としてマーク)で* SampleData(MySQL)*オプションを選択する必要があります。 ポインター「2」は、データベースと対話するために接続ステートメントとURLを編集するためのものです。
次のスクリーンショットは、接続ステートメントとデータベースのURLを定義できるダイアログボックスを示しています。 次の画面で4つの操作を実行する必要があります(ポインターを使用して強調表示されます)。
- 接続タイプのリストで、[ MySQL ]を選択します-データベース(データソース)として既にMySQLを選択しています。
- [アクセス]リストで、[ネイティブ(JDBC)]を選択します-JDBC接続を介して、データベースにアクセスできます。
- [設定]セクションで、ホスト名(localhost)、データベース名(employeedb)、ポート番号(3306)、ユーザー名(root)、およびパスワード(システムごと)を指定する必要があります。
- Test ボタンをクリックして、接続ステートメントをテストします。
最後に、 OK ボタンをクリックして、データベース接続を確認します。
ステップ3:クエリを追加する
次のスクリーンショットをご覧ください。 ダイアログボックスには、データベース接続を介して使用可能な保存済みクエリが表示されます。
- ダイアログボックスの右側にある Available Queries ブロックには、使用可能なすべてのクエリのリストが表示されます。
- Query Name ブロックには、上記の使用可能なクエリリストで選択されている選択されたクエリ名が表示されます。
- Query ブロックには、クエリステートメントが表示されます。 利用可能なクエリがない場合、または新しいクエリを作成する場合は、次のスクリーンショットでポインター「 1 」として強調表示されている「*+ *」ボタンをクリックします。
「+ *」ボタンをクリックすると、 *Query Name ブロックの名前を select_all_records として編集し、 Query ブロックで次のクエリステートメントを使用してクエリを作成できます。
クエリを追加すると、次のダイアログボックスが表示されます。 プレビューボタンをクリックします。
プレビューボタンをクリックすると、次のスクリーンショットに示すように、別のダイアログボックスにすべての*従業員*テーブルレコードが表示されます。 [閉じる]ボタンをクリックします。
次に、[OK]ボタンをクリックしてクエリを送信します。 クエリを送信すると、次のスクリーンショットに示すように、右側の構造ペインのクエリ名の下にすべてのテーブルフィールド名とそのデータ型が表示されます。 ここで、最大化されたボックスは、画面の右側に配置される構造ペインです。
これまでに、Pentaho Reporting Designerにデータソースとクエリを追加しました。 次に、レポートを作成するためにワークスペースに要素を追加する必要があります。 同じ例を次の章「レポート要素」に拡張します。
Pentaho-レポート要素
ほとんどのレポート要素は、[データ]ペインからワークスペース上の任意のバンド(主に詳細バンド)にドラッグアンドドロップすることで簡単に追加できます。
前の章から取った同じ例を続けましょう。 そこで、データソースとクエリをレポートデザイナーに追加しました。 ここでは、クエリによって生成された出力に基づいてレポートを設計します。
結果のクエリフィールドは、次のスクリーンショットで強調表示されているレポート要素です。 それらは- id 、 name 、 designation 、 department 、および age です。
レポート要素の追加
レポートデザイナーにクエリを追加すると、次のスクリーンショットに示すように、データペインに結果のフィールドが表示されます。
次に、必要なフィールド(レポートに表示するフィールド)を構造ペインからメインワークスペースの中央にある詳細バンドにドラッグします。
次のスクリーンショットをご覧ください。 構造ペインから年齢フィールドをドラッグする方向を示しています。
[詳細]バンドのすべてのフィールドを配置した後、上記のスクリーンショットで「 1 」と示されているビューボタンをクリックして、レポートビューを表示できます。
表示ボタンをクリックすると、結果レポートは次のスクリーンショットのようになります。 ワークスペースでは、すべてのフィールド([詳細]タブで指定)の値が表示されます。
ここで、デザインモードに戻りたい場合は、次のスクリーンショットで「 1 」とマークされたデザインシンボルをクリックします。
ペンタホ-ページフッターフィールド
レポートの各ページには、2つの特別な領域が含まれています。 すべてのページの上部に、 page-header 領域があります。 そして、ページの下部に、*ページフッター*エリアがあります。 残りのページは、実際のレポートコンテンツに使用できます。
Pentahoでのページフッターフィールドの追加
ページフッタータブは、いくつかの属性と機能を表示するために使用されます。 たとえば、ページフッタータブを使用して、ページの下部にある年齢フィールドの最大値を印刷できます。 レポートエンジンは、レポート機能を使用してこれらの機能を許可します。
次のスクリーンショットをご覧ください。 ここで、構造ペインの[データ]タブには、シンボル_f〜x〜_(「 1 」としてマーク)が含まれています。 機能追加ボタンです。 このボタンをクリックして、レポートにさまざまな機能を追加します。
次に、さまざまな機能がさまざまなグループに分けられたダイアログボックスが表示されます。 ページフッターで従業員の最大年齢を印刷するには、次のスクリーンショットで「 1 」とマークされている Summary グループの Maximum 関数を選択する必要があります。 それを選択し、[OK]をクリックします。
[ Ok ]ボタンをクリックすると、画面右側にある構造ペインの関数ラベルに関数が追加されます。
追加した機能(つまり、 最大)、その関数のプロパティを含む構造ペインの下に別のペインがあります。
次の画面を見てください。 最大化されたボックスには、2つのポインター(ポインター1およびポインター2)が含まれます。
- *ポインタ1 *-構造ペインのデータタブで機能を選択します。
- *ポインター2 *-ドロップダウンリストから年齢フィールドを選択して、プロパティセクションのフィールド名を編集します。 従業員の最大年齢を印刷する必要があるためです。
これで、カスタマイズされたプロパティを使用して関数の準備ができました。 これで、レポートでその関数をページフッター属性として使用できます。
次のスクリーンショットをご覧ください。 この場合も、2つのポインター(ポインター1およびポインター2)が含まれます。
- *ポインター1 *-次のスクリーンショットに示すように、構造ウィンドウからワークスペースのページフッターバンドに最大関数を選択してドラッグします。 これで、レポートの設計の準備ができました。
- *ポインター2 *-画面の左側にある[プレビュー]ボタンを選択します。
次の画面を見てください。 レポートのプレビューが表示されます。 従業員の最大年齢がマークされ、最大化されたボックスに表示されます。
ペンタホ-グループ
Pentahoは、生データを意味のある情報に変換するためのさまざまな機能と機能を提供します。 ここでは、そのような機能 Groups の使用方法を学習します。 この機能を使用して、ユーザーがレポートを簡単に理解できるように、未加工の行セットデータをグループに分離できます。
- グループ化は、データの長いリストを意味のあるセパレーターに沿って分割するのに最適な方法です。
- グループを使用すると、同様のアイテムをまとめて、これらのアイテムを他のアイテムのグループから視覚的に分離できます。
- また、グループ内のアイテムの数を印刷したり、合計や平均を計算したりするなど、データに対してさまざまな集計を実行するためにグループが必要になります。
Pentahoでグループを追加する
従業員データに基づいたレポートがすでにあります。 ここでのクエリは、「部門」に従ってすべての従業員レコードをグループ化することです。 以下の手順に従って、指定された要件を満たします。
まず、構造ペインの[グループの追加]ボタンをクリックしてプロセスを開始します。 [グループの追加]ボタンは、次のスクリーンショットで「1」とマークされています。
[グループの追加]ボタンをクリックすると、オプションのリストが表示されます。 次に、リストから[グループの追加]オプションをクリックします。
[グループの追加]をクリックすると、指定された使用可能なフィールドからグループフィールドを追加できるダイアログボックスが表示されます。
次のスクリーンショットをご覧ください。 1、2、3としてマークしたダイアログボックスで、3つのアクティビティが強調表示されます。
- *ポインター1 *-このグループのユーザー定義名を入力します。
- ポインタ2 *-利用可能なフィールドリストから *department フィールドを選択します。
- ポインタ3 *-矢印(→*)ボタンをクリックして、選択したフィールドを選択したフィールドリストにコピーします。
選択したフィールドリストでその部門フィールドを選択し、[OK]をクリックして確認します。
グループを追加すると、[構造]ペインの[構造]タブに表示されます。 また、ワークスペースに Group Header および Group Footer バンドがあります。
次のスクリーンショットをご覧ください。 レポートデザイナの左側のパレットからラベルアイコンをグループヘッダーにドラッグして、レポートに静的ラベルを追加します(スクリーンショットでは、このアクティビティは「 1 」としてマークされています)。
ラベルをダブルクリックすると、ラベルを編集して名前を Department に変更できます。 書式設定ツールバーまたは書式設定パレット(それぞれ「3」および「4」としてマーク)を使用して、ラベルの書式を変更できます。
さらに進んでみましょう。 構造ペインを「データ」タブに切り替えます。 構造フィールドから部門フィールドを選択し、グループヘッダーにドラッグします(このアクティビティは、次のスクリーンショットで「 1 」としてマークされています)。 レポートのプレビューを表示するには、次のスクリーンショットで強調表示され、「 2 」とマークされている画面の左側にあるプレビューボタンをクリックします。
プレビューボタンをクリックすると、次のスクリーンショットに示す結果レポートが表示されます。 レコードが部門別にグループ化されていることがわかります。
レポートはこの段階ではあまり魅力的ではありません。 書式ツールバーまたは書式パレットを使用して、色のタッチを追加し、見出しをより効果的にすることができます。
これで、Pentahoを使用してさまざまなタイプのレポートを生成する準備ができました。 これまでに説明した手順に従って、Pentahoで利用可能なすべての機能とオプションを使用してみてください。
ペンタホ-チャートレポート
- グラフ*とも呼ばれる*チャート*は、データのグラフィカルな表現です。 Pentaho Reporting Designerは、さまざまな種類のチャートを提供します。 Pentaho Reporting Designerのパレットで利用可能な「チャート要素」オプションを使用して、チャートを設計できます。
チャートを作成するための3つの要件があります-
- データソースからチャート作成データを抽出するための data-collector 。
- 収集されたデータからグラフを作成する chart-expression 。
- 結果のチャートオブジェクトを表示する*レポート要素*。
ここで例を挙げて、Pentahoでチャートを作成するプロセスを理解してみましょう。
次の表には、3つの自動車ブランドの機能に関するデータが含まれています。 棒グラフを使用してこのデータを示します。
Car | Speed | User Rating | Mileage | Safety |
---|---|---|---|---|
Fiat | 1 | 3 | 5 | 5 |
Audi | 5 | 6 | 10 | 4 |
Ford | 4 | 2 | 3 | 6 |
まず、指定されたテーブルデータに基づいて car という名前のテーブルを作成します。 MySQLデータベースをデータソースとして使用しています。 その(データソース)をPentaho Reporting Designerに追加します。 「Pentaho-データソースとクエリ」の章で、Pentaho Reporting Designerにデータソースとクエリを追加する方法について既に説明しました。
Pentahoでグラフを作成する手順
次に、以下の手順に従って、特定のシナリオに基づいてグラフを作成します。
ステップ1-クエリを追加する
クエリは、テーブル car からすべてのレコードを取得します。 したがって、クエリは次のようにする必要があります-
次のスクリーンショットは、指定されたクエリをデータソースに追加する方法を示しています。
ステップ2-ページヘッダーに画像を追加する
これはオプションの手順ですが、レポートの美観を向上させる上で画像が重要な役割を果たすため、重要です。
次のスクリーンショットをご覧ください。 ここでは、次の5つのアクティビティを強調しました-
- クエリを追加すると、構造ペインにクエリフィールドが表示されます。 構造ペインから、それぞれのフィールドを選択し、レポートワークスペースの*詳細*タブにドラッグアンドドロップします。 [詳細]タブには、フィールド値のみが表示されます。 パレット*からラベルフィールドを選択して、それらのそれぞれの見出しラベルを*レポートヘッダー*タブに追加します。
- パレットから取得した画像を追加し、ページヘッダー*タブに配置します。 レポートの見出しの*ページヘッダー*に別のラベルを追加し、適切な見出し( *CAR – CHART など)を使用して効果的なプレゼンテーションを行います。 画像要素をダブルクリックします-[コンテンツの編集]というダイアログボックスが表示されます。
- 画像を挿入するには2つのオプションがあります。 画像のURLをレポートにリンクするか、画像をレポートに埋め込みます。 「レポートに埋め込む」オプションを選択して、画像を埋め込むことにしました。
- インターネットから車のサンプル画像をダウンロードして、*ページヘッダー*に入れます。 ボタンをクリックして、場所のURLでサンプルの車の画像を見つけます。 [OK]ボタンをクリックして確認します。
ステップ3-レポートフッターにグラフを追加する
選択をクリックし、左側のパレットからレポートにドラッグしてチャートを追加します。 次のスクリーンショットでは「1」とマークされています。 レポートフッターの棒グラフ要素をダブルクリックします。
ステップ4-チャートプロパティの追加
チャート要素をダブルクリックすると、収集されたデータの詳細とチャート式の詳細を提供するダイアログボックスが表示されます。
次のスクリーンショットをご覧ください。 タブ*プライマリデータソース*には2つのマーカーが含まれています-
- マーカー「 1 」は、カテゴリセットデータコレクターを選択する必要があるドロップダウンリストです。
- マーカー「 2 」は、名前フィールドを選択する必要がある category-column のドロップダウンリストでもあります。
プライマリデータソースには、 Common 、 Series 、および Group の3つのセクションがあります。 ここでは、クエリでグループを使用していないため、[グループ]セクションに何も追加する必要はありません。
空の値をクリックします。次のスクリーンショットに示すようなダイアログボックスが表示されます。 2つのアクティビティ(1と2)がマークされています。
- (+)ボタンをクリックして、列に値フィールドを追加します。
- 空の値をクリックすると、速度フィールドを選択する必要があるドロップダウンリストが表示されます。
上記の2つのアクティビティを繰り返して、user_rating、mileage、safetyフィールドを列に追加します。 これらすべてのフィールドを追加すると、次のような画面が表示されます。 確認のために「OK」をクリックします。
[プライマリデータソース]セクションの次の列は、シリーズセクションです。
シリーズ-シリーズフィールドで、値ごとのシリーズオプションをクリックします。 次のスクリーンショットに示すダイアログボックスがあります。 2つのマーカー(1と2)があります。
- (+)ボタンをクリックして、列に新しいフィールドを追加します。
- それをダブルクリックすると、そのフィールドを編集できます。
これら2つのアクティビティを繰り返して、速度、ユーザー評価、マイレージ、安全性などのフィールド名を追加します。
これらは、レポートチャートの特定のセクションに表示するユーザー定義の名前です。 ただし、ここでは、 Common セクションのValue-columnフィールドに指定したのと同じ順序に従います。 以下に示すようにすべてのフィールドを追加したら、[OK]をクリックします。
すべてのセクションを追加すると、次のスクリーンショットに示すように、[グラフの編集]ダイアログボックスが表示されます。 *棒グラフ*ペインには、グラフ形式の変更に使用されるさまざまなプロパティが含まれています。
棒グラフの*全般*セクションで、 3-D 値を true (「1」としてマーク)に変更しました。 [OK]をクリックして、チャートのプロパティを確認します。
書式設定ツールバーの[プレビュー]ボタンをクリックして、レポートのプレビューを表示します。 次のスクリーンショットに示すように表示されます-
さまざまな種類のデータモデルを使用して、さまざまな値をグラフプロパティに提供することで、さまざまな種類のグラフをレポートに実装できます。 Pentahoは、レポートデザイナーでほぼ18種類のチャートを提供します。
Pentaho-レポート要素のフォーマット
ワークスペースにレポート要素を配置したら、さまざまな方法でフォーマットできます。 Pentaho Reporting Designerは、要件に従ってレポート要素をフォーマットするためのさまざまな機能を提供します。
テキストのフォーマット
テキスト、数値、日付、ラベルなどのすべてのテキストベースの要素は、レポートキャンバスのすぐ上に表示される書式設定ツールバーを使用して簡単に書式設定できます。
次のスクリーンショットをご覧ください。 ここでは、3つのオブジェクトをマークして強調表示しています-
- 選択されたレポート要素
- 書式設定ツールバー
- レポート要素をフォーマットするためのスタイルペインタブ
まず、ワークスペースでレポート要素を選択します。 その後、[書式設定]ツールバーまたは[スタイル]タブペインのプロパティを使用して、さまざまな方法でその要素を書式設定できます。
ハイパーリンクを追加する
Pentaho Report Designerでは、レポートデータにハイパーリンクを追加できます。 ここでは、レポートにハイパーリンクを追加する方法を説明する一般的な例を取り上げます。
フィールドのID、名前、および指定を取得するためのクエリを employee テーブルに既に追加していると仮定します。 また、これらのフィールドをレポートワークスペースに追加しました。 ここでの要件は、指定フィールドの個々の値を、ハイパーリンクを使用してパラメーター値としてhttps://www.google.co.in/?gws_rd=ssl[www.google.co.in]に渡すことです。
最初に、ワークスペースで指定フィールドを選択します。 それを右クリックして、リストからハイパーリンクを選択します。 次のスクリーンショットをご覧ください。
[ハイパーリンク]オプションをクリックすると、ハイパーリンクの場所のタイプ、URL、ターゲット、パラメーター名、値などの詳細を入力する必要があるダイアログボックスが表示されます。
次のスクリーンショットをご覧ください。 ここで、次の5つのアクティビティをマークして強調表示しました-
- ハイパーリンクの場所の種類を指定します。 一般的に場所の4種類があります-
- Self -同じレポートフィールドへのリンク。
- URL -その参照場所のURLを指定します。
- * Pentahoリポジトリ*-Pentahoリポジトリをインストールする場合は、localhostでそのファイルURLを指定します(ログインが必要です)。
- 手動リンク-リンクまたは数式を手動で作成し、ハイパーリンクとして提供します。 +この例では、URLタイプの場所を使用しています。
- WebサイトまたはファイルのURLを提供します。 このオプションでは、https://www.google.co.in/[[[1]]]を使用しています。
- ターゲットの場所、つまり _TOP、_BLANK 、または _PARENT を指定します。 「_TOP」を使用しました。 マウスポインターがハイパーリンクテキスト上に移動したときにユーザーに情報を提供する場合は、[ターゲット]ボックスのすぐ横にあるツールチップボックスに情報を入力します。
- プラス(+)記号を選択して、パラメーター名と値をパラメーターリストに追加します。
- パラメーター名と値をハイパーリンクのURLに提供します。 ここでは、パラメーター名として「 q 」を使用し、パラメーター値として「指定フィールド」を使用しています。
最後に、[OK]をクリックして、ハイパーリンクのプロパティを確認します。
書式設定ツールバーの[プレビュー]ボタンをクリックして、レポートのプレビューを表示します。 [プレビュー]ボタンをクリックすると、次のスクリーンショットが表示されます。 HRまたはAdminのいずれかの指定値にマウスポインターを置き、それぞれのURLを表示します。
このPentaho Report Designerプレビューでは、ハイパーリンクはユーザーを別のURLにリダイレクトするためのものです。 そのためには、メインツールバーの[実行]ボタン(次のスクリーンショットで「1」としてマーク)をクリックしてHTMLでこのレポートを実行し、そのHTMLオプションを選択する必要があります。
次のスクリーンショットをご覧ください。 レポートの実行にはさまざまなオプションがありますが、レポートをHTML形式で表示することを選択しました。
HTMLオプションを選択すると、次のスクリーンショットに示すように、レポートデータが別のHTMLページに表示されます。 Pentaho Reportingでハイパーリンクがどのように機能するかを理解するには、指定値をクリックしてください。
行バンディング
Pentaho Report Designerには、レポートの代替行に色を付けることができる行バンディングプロパティがあります。 前の例を取り上げて、その仕組みを理解しましょう。
ワークスペースに要素を追加した後、レポートワークスペースをクリックし、[書式]メニューに移動して、[行バンディング]を選択します。 次のスクリーンショットをご覧ください。
行バンディングオプションを選択すると、ダイアログボックスが表示されます。 ここでは、ドロップダウンリストから色を選択できます。 代替色として赤と緑を選択しました。 次に、[OK]ボタンをクリックして確認します。 次のスクリーンショットをご覧ください。
[プレビュー]ボタンをクリックして、レポートが交互の行の色でどのように表示されるかを確認します。 次のスクリーンショットに示すように表示されます。
ペンタホ-機能
レポートの各ページには、*ページヘッダー*エリアと*ページフッター*エリアが含まれます。 残りのページは、実際のレポートコンテンツに使用できます。
ページフッタータブは、いくつかの属性と機能を表示するために使用されます。 たとえば、ページフッターの従業員の年齢フィールドの最大値を印刷できます。 レポートエンジンは、関数を使用してこれらの機能を許可します。
前の章で使用したのと同じ employee テーブルを使用してみましょう。 すべてのフィールドをレポートワークスペースに追加した後、ページフッタータブに関数を追加して、従業員の最大年齢を調べてみましょう。
以下の手順に従って、定義済みの関数をレポートに追加します。
ステップ1-機能ボタン(f〜x〜)をクリックします
次のスクリーンショットをご覧ください。 ここで、構造ペインの[データ]タブには、シンボル_f〜x〜_(「 1 」としてマーク)が含まれています。 機能追加ボタンです。 このボタンをクリックして、レポートにさまざまな機能を追加します。
ステップ2-特定の機能を選択する
次に、さまざまな機能がさまざまなグループに分けられたダイアログボックスが表示されます。 ページフッターで従業員の最大年齢を印刷するには、次のスクリーンショットで「 1 」とマークされている Summary グループの Maximum 関数を選択する必要があります。 それを選択し、[OK]をクリックします。
[ Ok ]ボタンをクリックすると、画面右側にある構造ペインの関数ラベルに関数が追加されます。
ステップ3-フィールド名を定義する
追加した機能(つまり、 最大)、その関数のプロパティを含む構造ペインの下に別のペインがあります。
次の画面を見てください。 最大化されたボックスには、2つのポインター(ポインター1およびポインター2)が含まれます。
- *ポインタ1 *-構造ペインのデータタブで機能を選択します。
- *ポインター2 *-ドロップダウンリストから年齢フィールドを選択して、プロパティセクションのフィールド名を編集します。 従業員の最大年齢を印刷する必要があるためです。
手順4-関数をレポートワークスペースに追加する
これで、カスタマイズされたプロパティを使用して関数の準備ができました。 これで、レポートでその関数をページフッター属性として使用できます。
次のスクリーンショットをご覧ください。 この場合も、2つのポインター(ポインター1およびポインター2)が含まれます。
- *ポインター1 *-次のスクリーンショットに示すように、構造ウィンドウからワークスペースのページフッターバンドに最大関数を選択してドラッグします。 これで、レポートの設計の準備ができました。
- *ポインター2 *-画面の左側にある[プレビュー]ボタンを選択します。
ステップ5-プレビューの確認
次の画面を見てください。 レポートのプレビューが表示されます。 従業員の最大年齢がマークされ、最大化されたボックスに表示されます。
ペンタホ-追加機能
次の表に、レポートで使用できる機能の追加リストを示します。
共通機能
S.No.
機能名
目的
1
数式を開く
組み込みの数式エディターを使用して、独自のカスタム数式を開く関数を作成できます。
2
Page
レンダリングする前にレポートで使用されるページの数を数えます。
3
総ページ数
レンダリングされたレポートのページの総数をリストします。
4
ページのページ
現在のページ番号と、レンダリングレポートの合計ページ数を印刷します。
レポート機能
S.No.
機能名
目的
1
エクスポートタイプ
特定のエクスポートタイプがこのレポートに選択されているかどうかをテストします。
2
行バンディング
グループ内の各アイテムバンドの背景色を切り替えます。
3
繰り返しを非表示
グループ内の等しい値を非表示にします。 最初に変更された値のみが出力されます。
4
ページのヘッダーとフッターを非表示
出力タイプがページング可能でない場合、ページヘッダーとフッターバンドを非表示にします。
5
ページフッターを表示
レポートでレンダリングされた最後のページのページフッターのみを表示します。
サマリー関数
S.No.
機能名
目的
1
Sum
選択した数値列の合計を計算します。
2
カウント
グループに含まれるアイテムの総数をカウントします。 グループが指定されていない場合、レポート全体のすべてのアイテムがカウントされます。
3
ページごとにカウント
1つのレンダリングされたページのグループに含まれるアイテムの総数をカウントします。 グループが指定されていない場合、ページ全体のすべてのアイテムがカウントされます。
4
グループ数
選択したグループ内のアイテムの総数をカウントします。 グループが指定されていない場合、すべてのグループのすべてのアイテムがカウントされます。
5
最小
グループ内の最小値または最小値を識別します。
6
最大
グループ内の最高値または最高値を識別します。
7
合計商
2列の合計に対して単純な除算を実行し、数値を返します。
8
合計商パーセント
2列の合計に対して単純な除算を実行し、パーセント値を返します。
9
計算
計算結果を保存します。 この関数はグループで使用されます。
10
ページ数
指定された基準に従ってページ上のアイテムをカウントします。 この値は、新しいページに到達するとゼロにリセットされます。
11
ページの合計
指定されたすべてのアイテムを1ページに追加し、合計を生成します。 この値は、新しいページに到達するとゼロにリセットされます。
実行中の関数
S.No.
機能名
目的
1
Sum
指定した列の現在までの合計を計算します。
2
カウント
グループまたはレポート内のアイテムをカウントします。
3
グループ数
レポート内のグループの数をカウントします。
4
明確なカウント
列内の特定の値の個別の出現をカウントします。
5
平均
特定の列の平均値を計算します。
6
最小
列の最小値または最小値を識別します。
7
最大
列の最大値または最大値を識別します。
8
合計の割合
数値列のパーセント値を計算します。 合計は、カウントされたアイテムの数で除算されます。
高度な機能
S.No.
機能名
目的
1
メッセージフォーマット
Java Message Format仕様に従ってテキストをフォーマットします。
2
リソースメッセージフォーマット
Java Message Format仕様に従って、リソースバンドルからテキストをフォーマットします。
3
見上げる
ある列の文字列を別の文字列にマップします。
4
間接参照
マップされたフィールドから値を返します。
5
リソースバンドルの検索
定義されたフィールドの値をリソースバンドルのキーとして使用して、リソースバンドルのルックアップを実行します。
6
数式を開く
組み込みの数式エディターを使用して、独自のカスタム数式を開く関数を作成できます。