Робота з завданнями

Іноді неможливо виконати завдання, як було заплановано, і його потрібно розділити на дві або більше частин. Aspose.Tasks підтримує цю функцію проекту Microsoft.

Завдання розщеплення

Властивість SplitParts, викрита класом завдання, використовується для визначення розділених частин завдання, тоді як метод Splittask, що піддається класу ресурсів, використовується для розділення одного завдання на кілька частин. SplitParts повертає колекцію розділених деталей, тоді як метод Splittask приймає дату початку, дату закінчення та аргументи календаря для розділення завдання.

Завдання розщеплення та перегляду в Microsoft Project

Розділити завдання в проекті Microsoft:

  1. Визначте довге завдання, і ви хочете розділити.
  2. У меню завдання виберіть групу **** та натисніть розділити завдання.
  3. Клацніть на положенні, яке потрібно розділити завдання.

Щоб побачити розділені завдання в Microsoft Project One, можна вибрати gantt Chart у меню Переглянути. Розбиті завдання пов’язані пунктирною лінією.

Розбиті завдання в Microsoft Project

Розділення завдання в Microsoft Project

Створення та розщеплення завдання

Щоб створити та розділити завдання, виконайте ці кроки:

  1. Створити новий проект.
  2. Створіть та призначте новий календар проекту.
  3. Створіть і додайте нове завдання в проекті.
  4. Створіть і додайте нове завдання ресурсів у проекті.
  5. Використовуйте метод Splittask, викритий класом ResourceasSignment, щоб розділити завдання.
  6. Напишіть новий проект на диск.

Наступний код показує, як виконати ці завдання:

 1// For complete examples and data files, please go to https://github.com/aspose-tasks/Aspose.Tasks-for-Java
 2// The path to the documents directory.
 3String dataDir = Utils.getDataDir(SplitTasks.class);
 4
 5// Create new project
 6Project splitTaskProject = new Project();
 7
 8// Get a standard calendar
 9Calendar calendar = splitTaskProject.get(Prj.CALENDAR);
10
11// Set project's calendar settings
12java.util.Calendar cal = java.util.Calendar.getInstance();
13cal.set(2011, 3, 15, 8, 0, 0);
14splitTaskProject.set(Prj.START_DATE, cal.getTime());
15cal.set(2011, 3, 21, 17, 0, 0);
16splitTaskProject.set(Prj.FINISH_DATE, cal.getTime());
17
18// root task
19Task rootTask = splitTaskProject.getRootTask();
20rootTask.set(Tsk.NAME, "Root");
21
22// Add a new task
23Task taskToSplit = rootTask.getChildren().add("Task1");
24taskToSplit.set(Tsk.DURATION, splitTaskProject.getDuration(3));
25
26// Create a new resource assignment
27ResourceAssignment splitResourceAssignment = splitTaskProject.getResourceAssignments().add(taskToSplit, null);
28
29// Generate resource assignment timephased data
30splitResourceAssignment.timephasedDataFromTaskDuration(calendar);
31
32// Split the task into 3 parts.
33// Provide start date and finish date arguments to SplitTask method
34// These dates will be used for split
35// Set project's calendar settings
36cal = java.util.Calendar.getInstance();
37java.util.Calendar cal2 = java.util.Calendar.getInstance();
38
39cal.set(2011, 3, 16, 8, 0, 0);
40cal2.set(2011, 3, 16, 17, 0, 0);
41splitResourceAssignment.splitTask(cal.getTime(), cal2.getTime(), calendar);
42cal.set(2011, 3, 18, 8, 0, 0);
43cal2.set(2011, 3, 18, 17, 0, 0);
44splitResourceAssignment.splitTask(cal.getTime(), cal2.getTime(), calendar);
45splitResourceAssignment.set(Asn.WORK_CONTOUR, WorkContourType.Contoured);
46
47// Save the Project
48splitTaskProject.save(dataDir + "Project.Xml", SaveFileFormat.XML);
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.