【DO!BOOK・ページリンク】
2008_migaro_techreport_001   6 / 136

BOOKをみる

10秒後にBOOKのページに移動します


4 @ DBGrid の表示データ中で着目すべ き行、セル、列あるいは特定のデータ内 容などに応じて、傾向管理や識別容易化 のために、OnDrawColumnCell イベン トで着色判定用関数を呼び出している。  この関数は、呼び出し元のDBGrid の配列番号と項目を引数とし、DBGrid ごとの判定ロジックにより着色要否や色 番号を返す。【図2-1】【図2-2】【図2-3】  これによりユーザーは、着目すべき行、 値の傾向等を直感的に把握可能になる。 着色の判定の閾値と色には、ユーザーが 入力したEdit の値やColorBox で設定 した色により変更可能なものもある。【図 2-4】 A VB-Report の機能で、Excel 出力す る際にVB-Report3.0 の色定数を指定す る必要がある。これは、Delphi 側の色 をVB-Report3.0 の色定数に対応させる。 【図2-5】  DBGrid 各セルの着色用関数から返さ れる色の色相範囲に対応して、VBReport3.0 の色定数に変換する関数を作 成した。【図2-6】【図2-7】  これにより、共通の着色ロジックでほ ぼ同等に着色されたEXCEL の表を得 ることが可能となった。 B通常DBGrid では、選択行の左端の 三角マークと選択セル色の反転で識別さ れる。だが項目数が多い場合にはわかり にくい。  OnDrawColumnCell イベントで、 TCustomDBGrid から派生させた TAccessDBGrid での選択行と現レコー ドのインデックスの一致判定により、着 色を行うことが可能になった。【図2-8】 【図2-9】 C Query の動的SQL で時系列に集約し たデータを抽出し、ClientDataSet に キャッシュされた状態で、DBCrossTab Source 経由でDBChart 上の系列に接 続している。  グループ化基準、集計項目等は、ユー ザーの選択に応じて、DBCrossTab Source のGroupField、ValueField 等 を動的に切り替える。ClientDataSet の キャッシュデータをもとにしているた め、瞬時に角度を変えてのデータ分析が 可能となった。  また、1 つのQuery のSQL で抽出さ れたデータに対して、DataSetProvider 経由で複数のClientDataSet を接続し、 各ClientDataSet のFilter プロパティ を個々に変える。1 つのQuery で、複 数のグラフの一括表示を実現している。 【図2-10】【図2-11】【図2-12】【図2-13】 【図2-14】  さらに、グラフ上のダブルクリックで 共通のTeeCommander を呼び出し、 ユーザーが独自にグラフの書式編集、印 刷、コピー等をできるようにした。その 際、呼び出し元のグラフに応じて表示位 置を変更し、共有化を実現している。【図 2-15】  グラフで全体感を確認した後に、系列 のデータの内容をドリルダウンしたい場 面も多い。グラフ上の該当部分をクリッ クすることで、その要素情報をパラメー タとして詳細を表示する機能を多く実装 した。【図2-16】【図2-17】【図2-18】 D TENDA 殿のマニュアル作成ツール (DOJO) の機能の1 つである、 DHTML 形式の体験シミュレーション 型マニュアルを各機能ページ別に作成 し、社内のWeb サーバーに保存した。  この該当HTML を、各ページの Image のクリックイベントで、 ShellExecute により呼び出せるように した。【図2-19】  実際に操作する感覚で機能・操作方法 を習得できるため、学習効果が高く、マ ニュアル配布、教育等の負荷を軽減でき る。音声解説も付加可能である。【図 2-20】【図2-21】  なお、静的なHTML のマニュアル参 照、PDF 形式のマニュアルのダウンロー ドも可能である。【図2-22】【図2-23】 E Web ブラウザをコンポーネントとし て組み込み、navigate メソッドでURL を指定するだけで容易に任意のWeb ページを表示できる。この機能を応用し て、お客様住所のGoogleMap 表示、ネッ トワークカメラ映像表示、リモートデス クトップ参照(操作)【図2-24】を可能 とした。 ・GoogleMap  取得したGoogle Maps のAPIkey を 記述した雛形のHTML の住所とお客様 名の部分のみを、データベースとの連動 により動的に置き換える。【図2-25】【図 2-26】  GoogleMap の各種コントロールの組 み込みは、Google Maps API の解説資 料を参照した。  なお、地図ソフトでは目的地近辺の詳 細と全体感を確認することが多いため、 縮尺の異なる2 つのMap を1 つのURL で表示可能とし、印刷も可能とした。【図 2-27】【図2-28】  住所情報がGoogleMap での検索に適 合しない場合(旧漢字等)は一部修正で、 再試行可能とした。【図2-29】 ・ネットワークカメラ  映像は、設置したカメラに付与した IP アドレスをURL で指定することで、 見ることができる(Web サーバー機能 内蔵による)。  今回、各カメラの名称、IP アドレス、 アクセス権、接続可能時間等の基準を データベース管理している。これにより、 ユーザーに応じて使用条件をコントロー ル可能にし、プライバシー、ネットワー ク負荷等へ配慮した。また、アクセス中 の対象者がわかるように、アクセス状況 もデータベース管理している。【図2-30】  Web 会議と工場状況確認は、 ComboBox でカメラを切り替えること で汎用的に使える。【図2-31】  なお、Web 会議の際には、簡易なIP 電話会議機器を併用する。 Gユーザーのフォームからの項目選択に より、任意の分析を可能とした。ただし、 レコード件数が多い場合は、次元数によ りメモリの使用量が大きくなり、実用レ ベルでは使えなくなる。項目選択数上限 を設定している。【図2-32】【図2-33】 教訓・知見と今後の予定  Web ブラウザでWeb 画面をコンポー ネントとして組み込めるということを、 Delphi を使い始めて2 年近く気づかな かった。同様に、有効な機能を持つコン ポーネントで知らないものが多くあると 思われる。  また、標準では付属していないが、有 効利用できる可能性があるものも確認で きた。