制約は、プロジェクトスケジュール内でタスクを再スケジュールできる程度または範囲を定義します。この機能は、開始日、終了日、制約のタイプ、タスクの優先度、期間など、さまざまな要因に基づいて自動タスクをスケジュールする場合に役立ちます。制約は、手動タスクに適用できません。GanttView は手動タスクをスケジュールせず、制約を適用しても効果がないからです。
GanttView で制約を追加して自動タスクをスケジュールするには、特定のタスクの(Task クラスの)ConstraintDate プロパティと ConstraintType プロパティを設定します。ConstraintDate プロパティは、適用される制約の開始日と終了日を指定し、ConstraintType プロパティは制約のタイプを指定します。ConstraintType プロパティは、ConstraintType 列挙に含まれる次の値を受け取ります。
列挙値 | 説明 |
Default | プロジェクトを開始日からスケジュールする場合は、可能な限り早くタスクをスケジュールします。終了日からスケジュールする場合は、可能な限り遅くタスクをスケジュールします。 |
FinishNoEarlierThan | 定義した制約日またはそれ以降にタスクが終了するようにタスクをスケジュールします。 |
FinishNoLaterThan | 定義した制約日またはそれ以前にタスクが終了するようにタスクをスケジュールします。 |
MustFinishOn | 定義した制約日またはそれにタスクが終了するようにタスクをスケジュールします。 |
MustStartOn | 定義した制約日にタスクが開始されるようにタスクをスケジュールします。 |
StartNoEarlierThan | 制約日またはそれ以降にタスクが開始されるようにタスクをスケジュールします。 |
StartNoLaterThan | 制約日またはそれ以前にタスクが開始されるようにタスクをスケジュールします。 |
制約を適用するには、コードで ConstraintDate プロパティと ConstraintType プロパティを設定する必要があります。次の例では、「クイックスタート」 で作成したサンプルを使用します。