Батьківські та дитячі завдання

Завдання можна організувати в ієрархії. Коли завдання має під ним одне або кілька завдань, їх називають батьками. Завдання під ним називають батьками.

Робота з батьківськими завданнями та дітьми

Клас завдання розкриває заняття, які допомагають вам визначити:

Батьківські та дитячі завдання в Microsoft Project

Оголосити завдання як батько або дитяче завдання в проекті Microsoft:

  1. У формі запису завдання виберіть завдання та натисніть його.
  2. Виберіть випереджає, щоб перетворити завдання на батька, або,
  3. Виберіть Відступ, щоб перетворити завдання на дитину.

батьківські завдання та діти в Microsoft Project

Батьківські відносини дитини в проекті Microsoft

Отримання батьків та дитячих завдань

Наступні приклади показують перегляд батьківських та дитячих завдань у проекті, що використовує Aspope.tasks.

 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(ParentAndChildTasks.class);
 4
 5Project prj = new Project(dataDir + "ParentAndChildTask.mpp");
 6
 7// Create a ChildTasksCollector instance
 8ChildTasksCollector collector = new ChildTasksCollector();
 9
10// Use TaskUtils to get all children tasks in RootTask
11TaskUtils.apply(prj.getRootTask(), collector, 0);
12
13List tasks = collector.getTasks();
14int iSize = tasks.size();
15// Parse through all the collected tasks
16for (int i = 0; i < iSize; i++) {
17    Task tsk = (Task) tasks.get(i);
18    System.out.println("Task Name = " + tsk.get(Tsk.NAME));
19}

Setting Child Tasks

 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(ParentAndChildTasks.class);
 4
 5Project proj = new Project(dataDir + "Blank2010.mpp");
 6proj.set(Prj.NEW_TASKS_ARE_MANUAL, new NullableBool(false));
 7double oneDay = 8d * 60d * 60d * 10000000d;
 8java.util.Calendar cal = java.util.Calendar.getInstance();
 9cal.set(2014, 9, 13, 8, 0, 0);
10Date startDate = cal.getTime();
11proj.set(Prj.START_DATE, startDate);
12
13Task task1 = proj.getRootTask().getChildren().add("Task 1");
14cal.set(2014, 9, 13, 8, 0, 0);
15task1.set(Tsk.START, cal.getTime());
16task1.set(Tsk.DURATION, proj.getDuration(29, TimeUnitType.Day));
17Task task2 = proj.getRootTask().getChildren().add("Task 2");
18
19// add child tasks to task 2
20Task task3 = task2.getChildren().add("Task 3");
21Task task4 = task2.getChildren().add("Task 4");
22
23cal.set(2014, 9, 15, 8, 0, 0);
24task3.set(Tsk.START, cal.getTime());
25task3.set(Tsk.DURATION, proj.getDuration(3, TimeUnitType.Day));
26task3.set(Tsk.CONSTRAINT_TYPE, ConstraintType.StartNoEarlierThan);
27task3.set(Tsk.CONSTRAINT_DATE, task3.get(Tsk.START));
28
29cal.set(2014, 9, 17, 8, 0, 0);
30task4.set(Tsk.START, cal.getTime());
31task4.set(Tsk.DURATION, proj.getDuration(3, TimeUnitType.Day));
32task4.set(Tsk.CONSTRAINT_TYPE, ConstraintType.StartNoEarlierThan);
33task4.set(Tsk.CONSTRAINT_DATE, task3.get(Tsk.START));
34
35task3.set(Tsk.PERCENT_COMPLETE, 50);
36task4.set(Tsk.PERCENT_COMPLETE, 70);
37
38proj.save(dataDir + "ProjectJava.mpp", SaveFileFormat.MPP);
Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.