C1GanttViewコントロールの概要
C1GanttViewコントロールは、Microsoft Project風の使用感でプロジェクト管理を行う機能を備えたコントロールです。コントロール内に必要なスケジュール管理機能を豊富に持っており、WindowsフォームにC1GanttViewコントロールを配置するだけで、ガントチャートを持ったプロジェクト管理アプリケーションを作成することができます。
C1GanttViewコントロールは、デザイン時・実行時のどちらでもプロジェクトをタスクごとのスケジュールで計画し設定することができます。設定したスケジュールはガントチャートとしてグラフィック表示され、プロジェクトの計画が一目で分かるようになっています。
プロジェクトのスケジュール設定にあたっては、一つ一つのタスクを主導で設定することはもちろん、タスクや期間、制約などのリストからスケジュールを自動的に生成することもできます。
そして設定したスケジュールは、アプリケーション実行時にいつでも調整・変更できます。
ユーザーがテーブル形式のデータグリッドや入力ダイアログを使用したり、グラフペイン内のバーをクリック&ドラッグしたりすることで、タスク情報を手動で編集することもできます。
C1GanttViewコントロールはC1FlexGridコントロールの拡張コントロールで、2つのグリッドから構成されます。左側は従来のデータ入力に、右側(グラフ)はクリック&ドラッグ入力に使用します。2つのグリッドはサイズ調整可能なスプリッタで分割されています。
作成したプロジェクトはXMLファイルに読み出して保存でき、また読み込むことができます。
また、C1GanttViewコントロールには、C1GanttViewコントロールを操作するためのコマンドを組み込んだ専用のツールバーが用意されています。
C1GanttViewコントロールの主な特徴
C1GanttViewコントロールは、以下の特徴を持っています。
自動および手動スケジュール作成
C1GanttViewコントロールでは、Microsoft Projectと同様に自動と手動両方のスケジュール作成がサポートされています。
自動スケジュール作成は、プロジェクトの開始日または終了日からスケジュールできます。開始日を入力すると、その日に開始する最初の自動スケジュールタスクがスケジュールされ、以降の自動スケジュールタスクのシーケンスが計算されます。終了日を入力すると、その日に終了する最後のタスクがスケジュールされ、次にその最終タスクの前のタスク、その前のタスクという風に最初のタスクがスケジュールされるまで続き、最後にプロジェクトの開始日が計算されます。
C1GanttViewコントロールは、最適なスケジュールを完了するためにタスクの最も早い日付または最も遅い日付を計算できます。
手動スケジュール作成はデフォルトモードで、個々のタスクスケジュールの計画と管理を手動で設定します。手動スケジュールでは、C1GanttViewコントロールによってタスクの開始日と終了日が設定されることはありません。
カレンダーとタイムスケールの設定
稼働日、稼働時間、例外を指定するカスタムカレンダー設定を作成して保存することができます。C1GanttViewコントロールでは、手動および自動スケジュールタスク用にデフォルトの稼働日と非稼働日が定義されています。
また、非常に柔軟なタイムスケジュールがサポートされており、強力な繰り返しパターンを使用して、稼働日やカレンダーの例外をカスタマイズすることができます。実行時ダイアログを使用して、3階層の日付/時刻形式を指定することも可能です。
制約
制約とは、タスクの開始日または終了日に設定される制限のことです。各タスクには自動モードでスケジュールを作成する際に、守る必要がある制約タイプと制約日を割り当てることができます。
先行タスク
各タスクには、1つまたは多数の先行タスクを割り当て、その開始または終了に依存させることができます。先行タスク(依存関係)は、タスクバー間の矢印で視覚化されます。先行タスクは、[タスク情報]ダイアログボックスから入力できます。タスクバーを先行タスクにドラッグすることで先行タスクを指定することも可能です。
期限
タスクを完了させる必要のある期限を設定します。期限が設定されたタスクは視覚的に判別できます。特定のタスクに期限を設定すると、グラフに下向きの緑の矢印が表示されます。
競合の検証
スケジュールの競合が発生したときにユーザーにそれを通知します。制約とリンクされたタスクの間に競合が発生したり、タスク間の参照が循環参照になったり、タスクの終了日前に期限がスケジュールされたりしたときに、ガントチャートのバーに競合を通知する赤いインジケータが表示されます。
リソース
人員、資材、コストなど、プロジェクトのリソースのリストを管理します。任意の数のリソースをタスクに割り当て、それぞれに原価率を指定できます。
達成率
ガントチャートのタスクバーでは、タスクの達成率を視覚化するプログレスバー風の表示をできます。
マイルストーン
マイルストーンは、プロジェクトの重要な時点または目印です。マイルストーンは、期間がゼロのタスクとして作成され、菱形で視覚化されます。
XMLファイル形式としてのロードと保存
作成したプロジェクトをXML形式のファイルとして保存することができます。保存したXMLファイルはいつでも読み込んでC1GanttViewコントロールに表示させることができます。
組み込みのツールバーには、スケジュールを保存およびロードするためのコマンドが含まれており、コードではSaveXMLメソッドおよびLoadXMLメソッドを使って操作することもできます。
カスタム列
グリッドでは、独自のデータ型、データ形式、およびテキスト配置カスタム列を作成できます。作成したカスタム列はXMLファイルに保存したり、XMLファイルからデータをロードしたりできます。
バースタイルのカスタマイズ
ガントチャートのタスクバーは、スタイルの形状と色を変更したり、単純に特定の1タスクのスタイルをカスタマイズしたりすることができます。またユーザーは、リソース名など、バーの両側に表示するテキストフィールドの指定もできます。
組み込みツールバー
C1GanttViewコントロールには、コントロールの機能をすぐに呼び出せる組み込みツールバーが付属しています。ユーザーは、1クリックでプロジェクト情報の管理、タスクの移動、挿入、削除を行えます。またユーザーは、表示されているグリッド列、リソース、タイムスケール、およびバースタイルの管理ができます。さらに、組み込みツールチップを非表示にして、独自のカスタムUIを使用することも可能です。