アプリケーションの作成
では、さっそくアプリケーションを作成していきましょう。
今回は、健康診断の血液検査結果を格納したSQL Serverのデータベースを読み込み、列モードで列方向に時系列的に検査結果を表示するアプリケーションを作ってみます。
データベースには、列方向に検査項目が並び、行方向にこれまでの検査結果が時系列的に格納されています。
アプリケーションではこの行列を逆にし、行方向に検査項目を並べ、列方向に過去の検査結果を並べることで、数値の時系列的変化を見ることができるようにしています。
なお、本来はSQL Server内のデータベースファイルに連結させたアプリケーションを作成しますが、本稿ではローカルに置かれたデータベースファイルに連結したアプリケーションを作成しています。
フォームのレイアウト
フォームには、WindowsフォームビューワのViewerコントロールを配置し、Dockプロパティを「Fill」に設定します。
フォームは、Loadイベントハンドラを作成します。
データ連結
アプリケーションにGcMultiRowコントロールを作成する前に、プロジェクトにデータベースファイルを連結させます。この操作はGcMultiRowコントロールに依存せず、通常のADOを使ったデータベース連結の操作になります。
なお、本稿でのVisual Studioの操作はVisual Studio 2010のものです。
(1)Visual Studioのメニューから「データ-新しいデータソースの追加」を選びます。
(2)データソース構成ウィザードに従って、データベースファイル「精密検査結果_Data.mdf」を連結します。
(3)データセットにテーブル「検査結果」を組み込みます。
テンプレートの作成
データ連結ができたら、このデータセットをもとにグリッドレイアウトのテンプレートを作成します。
(1)ツールボックスからフォームにGcMultiRowコントロールをドラッグアンドドロップします。
そしてスマートタグから「新しいテンプレートの作成」をクリックします。
(2)テンプレートウィザードが起動しますので、「データソースの定義からテンプレートを作成する」をクリックし「次へ」ボタンをクリックします。
(3)「水平方向へ展開」をクリックし「次へ」ボタンをクリックします。この設定で、レコードは水平方向(列方向)に展開されるようになります。
(4)データソースに「検査結果」を選び「次へ」ボタンをクリックします。
(5)「クエリーの設計」ではそのまま「次へ」ボタンをクリックします。
このページは表示するデータを選択する画面です。表示したいフィールドが一括で表示されるようになっていますので、個別に選択したい場合は「削除」ボタンで表示したくない項目を選びます。
(6)「テンプレートのレイアウトのデザイン」もそのままで「次へ」ボタンをクリックします。
(7)「スタイルを選択」画面では、あらかじめプリセットされているスタイルを使うことができます。このスタイルを使えば、グリッドの外観を細かく設定せずにカラフルなグリッドに仕上げることができます。ここでは、「Papyrus」をクリックし「次へ」ボタンをクリックします。
(8)「完了」ボタンをクリックすればテンプレートが出来上がります。
GcMultiRowコントロールとデータソースの連結
GcMultiRowコントロールとデータソースを連結させます。
プロジェクトにはすでにデータ連結が行われていますので、ウィザードにしたがってそれを連結していくだけです。
(1)もう一度スマートタグを開き、「データソースの選択-他のデータソース-プロジェクト データ ソース」をクリックします。
(2)そのままウィザードに従い「次へ」ボタンをクリックし、テーブル「検査結果」をクリックして完了ボタンをクリックします。
(3)以上でデータベースファイルがGcMultiRowコントロールで表示され、列方向にデータが表示されるアプリケーションが出来上がりました。
プロジェクトを実行して動作確認をします。データベースのデータが列方向に表示されます。
また、データ未入力の欄にデータを入力すると、列方向に新たに入力列が自動的に追加されます。
日付データがあればカレンダーが表示されますので、ここから入力することも可能です。