Task

Task class

يمثل مهمة في مشروع .

public class Task : IEquatable<Task>

الخصائص

اسم وصف
Assignments { get; } الحصول على مجموعة من تخصيصات الموارد لهذا الكائن.
Baselines { get; set; } الحصول على مجموعة القيم الأساسية للمهمة أو تعيينها.
Children { get; } الحصول على مجموعة مهام فرعية لهذا الكائن . كائن TaskCollection الذي يمثل المهام الفرعية.
ExtendedAttributes { get; } الحصول على كائن ExtendedAttributeCollection يحتوي على قيم سمة ممتدة.
OutlineCodes { get; set; } يحصل أو يحددOutlineCodeCollection الكائن .
ParentProject { get; } الحصول على المشروع الأصلي لمهمة .
ParentTask { get; } الحصول على المهمة الرئيسية لمهمة .
Predecessors { get; } يحصل على أTaskCollection الكائن الذي يحتوي على جميع العناصر السابقة لكائن المهمة هذا.
RecurringInfo { get; } يحصل على مثيلRecurringTaskInfo فئة للمهمة التي هي مهمة متكررة ؛ إذا لم تكن المهمة متكررة ، فستُرجع فارغة ؛ المعلومات الخاصة بمثيلRecurringTaskInfo موجود بتنسيق ملف mpp فقط.
SplitParts { get; } الحصول على مجموعة SplitPart التي تمثل أجزاء مهمة.
Successors { get; } يحصل على أTaskCollection الكائن الذي يحتوي على جميع العناصر اللاحقة لكائن المهمة.
TimephasedData { get; set; } الحصول على كائن TimephasedDataCollection لهذه المهمة أو تعيينه.

طُرق

اسم وصف
Clone() إنشاء نسخة كاملة من مهمة بدون مهام فرعية.
Delete() حذف مهمة من مجموعة مهام المشروع الأصل وجميع مهامها.
override Equals(object) إرجاع قيمة تشير إلى ما إذا كان هذا المثيل يساوي كائنًا محددًا.
Equals(Task) إرجاع قيمة تشير إلى ما إذا كان هذا المثيل يساوي مهمة محددة.
Get<T>(Key<T, TaskKey>) إرجاع القيمة التي تم تعيين الخاصية لها في هذه الحاوية.
override GetHashCode() إرجاع قيمة رمز تجزئة لهذه المهمة.
GetTimephasedData(DateTime, DateTime) عوائدTimephasedDataCollection مع الكائنTimephasedData القيم ضمن تاريخي البدء والانتهاء المحددين.
GetTimephasedData(DateTime, DateTime, TimephasedDataType) عوائدTimephasedDataCollection مع الكائنTimephasedData القيم ضمن تواريخ البدء والانتهاء المحددة لنوع بيانات زمني محدد على مراحل.
MoveToSibling(int) لنقل المهمة الحالية في نفس مستوى المخطط التفصيلي قبل مهمة بالمعرف المحدد. يحدد التواريخ المبكرة / المتأخرة) وحساب الحقول التابعة مثل فترات العمل وحقول العمل والتكلفة ومستويات المخطط التفصيلي) . إذا كان ParentProject.CalculationMode يدويًا ، فستحسب الطريقة فقط معرف المهمة ومستوى المخطط التفصيلي والأرقام التفصيلية تلقائيًا . إذا كان ParentProject. CalculationMode هو “تلقائي” الطريقة التي تعيد جدولة جميع مهام المشروع تلقائيًا (تواريخ البدء / الانتهاء ، وتعيين التواريخ المبكرة / المتأخرة ، وتحسب فترات الركود ، وحقول العمل والتكلفة ، وإعادة حساب المعرفات ومستويات المخطط التفصيلي) .
MoveToSibling(Task) ينقل المهمة الحالية في نفس مستوى المخطط التفصيلي قبل المهمة المحددة. إذا كان ParentProject.CalculationMode هو بلا مستخدم ، فيجب على المستخدم استدعاء Project.Recalculate () بعد استخدام هذه الطريقة (ستعيد جدولة جميع مهام المشروع (تواريخ البدء / الانتهاء ، وتعيين مبكرًا / التواريخ المتأخرة) وحساب الحقول التابعة مثل فترات السماح والعمل والتكلفة ومستويات المخطط التفصيلي) . إذا كان ParentProject.CalculationMode يدويًا ، فستحسب الطريقة فقط معرف المهمة ومستوى المخطط التفصيلي وأرقام المخطط التفصيلي تلقائيًا . إذا كان ParentProject.CalculationMode هو تلقائي تعيد الطريقة جدولة جميع مهام المشروع تلقائيًا (تواريخ البدء / الانتهاء ، وتعيين التواريخ المبكرة / المتأخرة ، وتحسب فترات الركود ، وحقول العمل والتكلفة ، وإعادة حساب المعرفات ومستويات المخطط التفصيلي) .
OutlineIndent() يضيف مسافة بادئة لمهمة في المخطط التفصيلي .
OutlineOutdent() يقوم بترقية مهمة في المخطط التفصيلي .
SelectAllChildTasks() يقوم بتجميع كافة المهام الفرعية لهذه المهمة بشكل متكرر.
Set<T>(Key<T, TaskKey>, T) تعيين الخاصية المحددة إلى القيمة المحددة في هذه الحاوية.
override ToString() إرجاع تمثيل سلسلة قصيرة لمهمة . التفاصيل الدقيقة للتمثيل غير محددة وعرضة للتغيير.

ملاحظات

ال مهمة يمثل ظرفًا ذريًا واحدًا من العمل.

يمكن للمرء استخدامها مهمةلتخطيط مشروع عن طريق إنشاء المهام وتعيين الموارد المناسبة لها. يتم تنظيم المهام في المشروع كهيكل شجرة هرمية متجذرة ، مع مهمة جذرية وأشجار فرعية من المهام الفرعية.

لبناء شجرة من المهام ، يمكن للمرء استخدام مجموعة متخصصةTaskCollection عن طريق الوصولRootTask الملكية على سبيل المثال:

Project project = new Project();

// إضافة مهام جديدة
Task task1 = project.RootTask.Children.Add(); // تمت إضافة مهمة رئيسية ذات اسم فارغ
Task childTask1 = task1.Children.Add("Child 1");
childTask1.Set(Tsk.Start, new DateTime(2020, 2, 12, 8, 0, 0))
childTask1.Set(Tsk.Duration, project.GetDuration(8, TimeUnitType.Hour));
childTask1.Set(Tsk.Finish, new DateTime(2020, 2, 12, 17, 0, 0));
Task childTask3 = task1.Children.Add("Child 3");
childTask3.Set(Tsk.Start, new DateTime(2020, 2, 13, 8, 0, 0))
childTask3.Set(Tsk.Duration, project.GetDuration(8, TimeUnitType.Hour));
childTask3.Set(Tsk.Finish, new DateTime(2020, 2, 13, 17, 0, 0));
Task childTask2 = task1.Children.Add("Child 2", 2); // يُدرج مهمة قبل التابع childTask3
childTask2.Set(Tsk.Start, new DateTime(2020, 2, 14, 8, 0, 0))
childTask2.Set(Tsk.Duration, project.GetDuration(8, TimeUnitType.Hour));
childTask2.Set(Tsk.Finish, new DateTime(2020, 2, 14, 17, 0, 0));

// حفظ المشروع بأحد التنسيقات المتاحة
project.Save("Filled project.xml", SaveFileFormat.MPP);

أنظر أيضا