DAIZEN IKEHARA (インフラジスティックス・ジャパン)
[2016-05-24]
皆さんは普段、データをどう分析していますか。売り上げ、経費、トラフィック、世の中は多くのデータにあふれています。過去の蓄積から現在、そして未来を考える。データ分析には大きな意味があります。身近な例では Excel のピボット テーブルがあり、データの集計を効率的に行うことができるようになります。
ピボット テーブルでは、あらかじめ決められたデータを表示するのではなく、ユーザーが集計を行うための行項目や列項目を任意に設定できます。また、合計、平均、個数、その他のカスタム集計ロジックを組み込むことができ、初級者から上級者までそのスキルに合わせたデータ分析を可能にします。
さて、顧客から「次期システムではこの Excel ピボット テーブルのような機能データ分析機能を実装してほしい。」と要望された場合にどう応えられるでしょうか。
このように通常の画面開発では実現難易度の高い順に次のような UI 要件が生まれます。
多くの場合は「3」や「4」でおさまりますが、今回の「ピボット グリッド」などは「2」の「事実上スクラッチで作るにはコストと期間がかかる」類の要件に分類され、顧客要望の実現に開発者は大いに頭を悩ますことになるでしょう。
インフラジスティックスが提供する統合 UI 開発コンポーネント「Infragistics Ultimate」はサード パーティーの画面部品スイートであり、先ほどの実現難易度でいう「2」および「3」の UI 要件を満たすことを主目的としてさまざまな開発テクノロジ、プラットフォームに対応した部品を提供しています。
その中でも Windows フォーム開発で利用できる Ultimate UI for Windows Forms は、10 年以上進化を続け、提供コントロール数も 100 を超えており、また、Microsoft Office で提供されている UI パターンをコントロールとして提供しています。その結果、顧客の「~みたいな」、「~のような」を最も簡単に実現することが可能となります。
今回のような「Excel のピボット テーブルのようなデータ集計機能を実現したい」という要望に応えるため、Ultimate UI for Windows Forms では WinPivotGrid というコントロールを提供しています。
このコントロールは Excel ピボットグリッドのデータ集計表示部分を再現します。
また、集計する行・列項目の入れ替えや集計するデータの設定を行うための「データ セレクター」が別コントロールとして用意されており、ユーザーが項目をドラッグ アンド ドロップすることでグリッドの表示が更新されます。
本稿では WinPivotGrid で主にできることをご紹介します。
集計データの表示を行うため、全体集計と細分化された集計をユーザーが行・列を展開し表示させることが可能です。
行・列共に必要な部分のみの集計を行うようにフィルタリングを設定することができます。
例えば 2004 年の Clothing の売り上げデータのみを閲覧したい場合は、それぞれのフィルタリングを設定します。
列項目の単数・複数の並べ替えを行うことで、特定項目の上位・下位を素早く判定できます。
例えば「Clothing の売り上げが最も大きかった年はいつか?また、その際に他の項目の売り上げはどうだったか?」を示した表示は下記のとおりです。
WinPivotGrid では XML for Analytics をサポートする XmlaDataSource、ADOMD データ プロバイダーをサポートする AdomdDataSource クラスを用意しており、既存のインフラストラクチャーを使用することもできますが、通常こういったデータ分析を行う際にはデータを保管しているシステムにも SQL Server Analytics Services (SSAS) のような特別な構成を必要とします。
そのため、特別な構成を必要としない FlatDataSource も併せて提供しています。FlatDataSource を利用することで、通常データ グリッドでのデータ表示に利用されるような単純な行列データをピボット テーブルで集計することが可能となります。このため、「データ分析機能を実装したいが、前提条件が...」 という悩みにも対応できます。
これらの実際の組み込み方法や動作結果については製品ドキュメント、トライアル版に付属している Windows Forms サンプル ブラウザーで確認してみてください。
顧客が求める要件は OS やプラットフォームであらかじめ提供されている範囲を超え始めています。「~みたいな」、「~のような」という要件が出てきた際にはぜひ、Infragistics Ultimate で該当する機能が提供されているかを確認してみてください。
Ultimate UI for Windows Forms 製品概要
Ultimate UI for Windows Forms
【関連リンク】
FlatDataSource の使用
http://help.jp.infragistics.com/Doc/Winforms/2016.1/CLR4.0/?page=WinPivotGrid_Using_FlatDataSource.html
次回の最終回 (第 5 回) は、Windows Forms で引き合いの多い Gantt (ガント) チャート コントロールの基本的な使い方や、カスタマイズ方法について紹介いたします。
© Copyright 2016 INFRAGISTICS. All Rights Reserved