Читання часово розподілених даних завдання
У Microsoft Project, часово розподілені дані відображаються в правій частині Task Usage і Resource Usage переглядів. Вони показують, як робота або витрати розподіляються у часі.
За допомогою Aspose.Tasks for .NET розробники можуть програмно читати та обробляти часово розподілені дані завдань з файлів MPP або XML.
Розуміння часово розподілених даних
Часово розподілені дані надають детальний розподіл значень завдання (наприклад, робота або витрати) по конкретних часових інтервалах. Aspose.Tasks забезпечує цю функціональність через Task клас:
- GetTimephasedData
Призначення: Отримує часово розподілені значення (робота або витрати) для завдання.
Параметри:
- Дата початку інтервалу
- Дата завершення інтервалу
- (Необов’язково) Тип часово розподілених даних (наприклад, TaskCost)
Це дозволяє розробникам програмно отримувати детальну аналітику проекту.
Робота з часово розподіленими даними
Aspose.Tasks for .NET підтримує читання часово розподілених даних завдання з файлів Microsoft Project (MPP). Часово розподілені дані отримуються за допомогою Task об’єкта GetTimephasedData методу.
- Щоб отримати часово розподілені дані по роботі завдання, метод GetTimephasedData приймає дати початку та завершення проекту як вхідні параметри.
- Щоб отримати часово розподілені дані по витратах завдання, він приймає додатковий вхідний параметр, що вказує тип часових даних як TaskCost.
Приклад: читання часово розподілених даних завдання в Aspose.Tasks
Наступний приклад на C# демонструє, як читати часово розподілені роботу та витрати значення для завдань:
1Project project = new Project("New Project.mpp");
2
3// Set project properties
4project.Set(Prj.StartDate, new DateTime(2013, 10, 30, 9, 0, 0));
5project.Set(Prj.NewTasksAreManual, false);
6
7// Add task and resources
8Task task = project.RootTask.Children.Add("Task");
9Resource resource = project.Resources.Add("Rsc");
10
11// Set resource rates and task duration
12resource.Set(Rsc.StandardRate, 10);
13resource.Set(Rsc.OvertimeRate, 15);
14task.Set(Tsk.Duration, project.GetDuration(6));
15
16// Create resource assignment
17ResourceAssignment assignment = project.ResourceAssignments.Add(task, resource);
18assignment.Set(Asn.Stop, DateTime.MinValue);
19assignment.Set(Asn.Resume, DateTime.MinValue);
20
21// Set Backloaded contour, it increases task duration from 6 to 10 days
22assignment.Set(Asn.WorkContour, WorkContourType.BackLoaded);
23
24project.SetBaseline(BaselineType.Baseline);
25task.Set(Tsk.PercentComplete, 50);
26
27// Read timephased data
28List<TimephasedData> td = assignment.GetTimephasedData(assignment.Get(Asn.Start), assignment.Get(Asn.Finish), TimephasedDataType.AssignmentRemainingWork).ToList();
29Console.WriteLine(td.Count);
30foreach(TimephasedData timePhasedValue in td)
31{
32 Console.WriteLine(timePhasedValue.Value);
33}
Ключові моменти
- Часово розподілені дані надають детальний огляд ходу виконання проекту та витрат.
- Розробники можуть використовувати їх для створення налаштованих звітів, діаграм або інтегрувати з аналітичними системами.
- Метод працює послідовно з MPP та XML форматами.
Поширені запитання
П: У чому різниця між часово розподіленими даними роботи завдання та часово розподіленими даними витрат?
- Часово розподілені дані по роботі показують розподіл годин/зусиль, тоді як Часово розподілені дані по витратах показують фінансовий розподіл у часі.
П: Чи можу я також записувати часово розподілені дані за допомогою Aspose.Tasks?
- Так. Aspose.Tasks дозволяє як читання та запис часово розподілених даних завдань.
П: Чи впливають часово розподілені дані безпосередньо на планування?
- Ні. Вони головним чином впливають на звітування та відстеження ресурсів/витрат, але не змінюють залежності між завданнями.