Робота з WBS, пов'язаним із завданням

Коди WBS (Work Breakdown Structure) дозволяють призначати номери рівнів завданням відповідно до потреб вашого бізнесу. Вони надають настроювану схему структурування та аналізу проєкту. Aspose.Tasks for .NET повністю підтримує роботу зі значеннями WBS програмно.

Робота з Work Breakdown Structure (WBS) в Aspose.Tasks for .NET

У Microsoft Project, Work Breakdown Structure (WBS) є ієрархічною структурою, яка визначає побудову завдань у проєкті. Вона допомагає керівникам проєктів організовувати, ідентифікувати та відстежувати результати проєкту. Aspose.Tasks for .NET забезпечує повну підтримку роботи з WBS програмно. Ви можете використовувати наступні властивості Tsk клас:

Ці властивості дозволяють розробникам читати та оновлювати структури завдань під час обробки файлів Microsoft Project (MPP/XML).

Перегляд WBS у Microsoft Project

Щоб переглянути інформацію WBS у Microsoft Project:

  1. Відкрийте Task Entry форму.
  2. На Insert меню, виберіть Column.
  3. Додайте WBS стовпець, щоб відобразити значення WBS для завдань.

Приклад: Зчитування WBS завдання

Наступний приклад показує, як отримати значення WBS завдання за допомогою Aspose.Tasks:

 1Project project = new Project("New Project.mpp");
 2
 3// Create a ChildTasksCollector instance
 4ChildTasksCollector collector = new ChildTasksCollector();
 5
 6// Collect all the tasks from RootTask using TaskUtils
 7TaskUtils.Apply(project.RootTask, collector, 0);
 8
 9// Parse through all the collected tasks
10foreach (Task task in collector.Tasks)
11{
12    Console.WriteLine(task.Get(Tsk.WBS));
13    Console.WriteLine(task.Get(Tsk.WBSLevel));
14
15    // Set custom WBS
16    task.Set(Tsk.WBS, "custom wbs" + task.Get(Tsk.WBS));
17}

Приклад: Додавання визначень коду WBS

Aspose.Tasks for .NET дозволяє визначати власні правила коду WBS за допомогою WBSCodeDefinition класу. Це дає змогу генерувати структуровані коди WBS, схожі на Microsoft Project.

 1Project proj = new Project();
 2
 3proj.WBSCodeDefinition = new WBSCodeDefinition();
 4proj.WBSCodeDefinition.GenerateWBSCode = true;
 5proj.WBSCodeDefinition.VerifyUniqueness = true;
 6proj.WBSCodeDefinition.CodePrefix = "CRS-";
 7
 8WBSCodeMask mask = new WBSCodeMask();
 9mask.Length = 2;
10mask.Separator = "-";
11mask.Sequence = WBSSequence.OrderedNumbers;
12proj.WBSCodeDefinition.CodeMaskCollection.Add(mask);
13
14mask = new WBSCodeMask();
15mask.Length = 1;
16mask.Separator = "-";
17mask.Sequence = WBSSequence.OrderedUppercaseLetters;
18proj.WBSCodeDefinition.CodeMaskCollection.Add(mask);
19
20Task task = proj.RootTask.Children.Add("Task 1");
21Task child = task.Children.Add("Task 2");
22
23proj.Recalculate();
24proj.Save("AddWBSCodes_out.xml", SaveFileFormat.XML);

Приклад: Перенумерація кодів WBS

Так само, як Microsoft Project надає Renumber функцію, Aspose.Tasks for .NET також може програмно перенумеровувати коди WBS:

 1Project project = new Project("New Project.mpp");
 2
 3Console.WriteLine("WBS codes before: ");
 4
 5// output: ""; "1"; "2"; "4"
 6foreach (Task task in project.RootTask.SelectAllChildTasks())
 7{
 8    Console.WriteLine("\"" + task.Get(Tsk.WBS) + "\"" + "; ");
 9}
10
11project.RenumberWBSCode(new List<int> { 1, 2, 3 });
12// project.RenumberWBSCode(); // this overload can be used instead
13
14Console.WriteLine("WBS codes after: ");
15
16// output: ""; "1"; "2"; "3"
17foreach (Task task in project.RootTask.SelectAllChildTasks())
18{
19    Console.WriteLine("\"" + task.Get(Tsk.WBS) + "\"" + "; ");
20}

Ключові моменти

Часті запитання

П: Чи можу я визначити власний шаблон коду WBS?

П: Чим WBS відрізняється від номерів контуру завдань?

П: Чи можна змінювати коди WBS після створення завдання?

П: Чи перезаписує перенумерація існуючі власні коди?

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.