다양한 작업 분포에 대한 시간대별 데이터 생성
프로젝트 일정 관리를 할 때 서로 다른 자원 할당에 대해 작업이 시간에 따라 어떻게 분배되는지 분석해야 할 때가 많습니다. Aspose.Tasks for .NET은 이를 생성함으로써 이러한 분석을 가능하게 합니다. 시간대별 데이터 다양한 작업 분포에 따라 자원 할당에 대한 시간대별 데이터를 생성합니다. 이를 통해 개발자는 자원 사용을 보다 정확하게 시뮬레이션하고, 추적하며, 보고할 수 있습니다.
작업 분포를 위한 시간대별 데이터 생성
작업 분포는 작업 기간 동안 작업이 어떻게 배분되는지를 정의합니다. Aspose.Tasks for .NET은 다양한 분포(예: 균등, 후반 집중, 전반 집중, 거북형, 종형 등)를 적용하여 해당하는 시간대별 데이터를 생성할 수 있습니다. 생성된 데이터는 특정 메서드를 사용하여 검색됩니다. TimeScaleData
해당 메서드는 프로젝트의 시작 및 종료 날짜를 입력 매개변수로 요구합니다.
코드 예제
다음 예제는 자원에 서로 다른 유형의 작업 분포를 할당하고 분석을 위해 해당 시간대별 데이터를 검색하는 방법을 보여줍니다:
1Project project = new Project("New Project.mpp");
2
3// Get the first task of the Project
4Task task = project.RootTask.Children.GetById(1);
5
6// Get the First Resource Assignment of the Project
7ResourceAssignment firstRA = project.ResourceAssignments.ToList()[0];
8
9// Flat contour is default contour
10Console.WriteLine("Flat contour");
11
12var tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
13foreach (TimephasedData td in tdList)
14{
15 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
16}
17
18// Change contour
19firstRA.Set(Asn.WorkContour, WorkContourType.Turtle);
20Console.WriteLine("Turtle contour");
21tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
22foreach (TimephasedData td in tdList)
23{
24 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
25}
26
27// Change contour
28firstRA.Set(Asn.WorkContour, WorkContourType.BackLoaded);
29Console.WriteLine("BackLoaded contour");
30tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
31foreach (TimephasedData td in tdList)
32{
33 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
34}
35
36// Change contour
37firstRA.Set(Asn.WorkContour, WorkContourType.FrontLoaded);
38Console.WriteLine("FrontLoaded contour");
39tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
40foreach (TimephasedData td in tdList)
41{
42 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
43}
44
45// Change contour
46firstRA.Set(Asn.WorkContour, WorkContourType.Bell);
47Console.WriteLine("Bell contour");
48tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
49foreach (TimephasedData td in tdList)
50{
51 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
52}
53
54// Change contour
55firstRA.Set(Asn.WorkContour, WorkContourType.EarlyPeak);
56Console.WriteLine("EarlyPeak contour");
57tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
58foreach (TimephasedData td in tdList)
59{
60 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
61}
62
63// Change contour
64firstRA.Set(Asn.WorkContour, WorkContourType.LatePeak);
65Console.WriteLine("LatePeak contour");
66tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
67foreach (TimephasedData td in tdList)
68{
69 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
70}
71
72// Change contour
73firstRA.Set(Asn.WorkContour, WorkContourType.DoublePeak);
74Console.WriteLine("DoublePeak contour");
75tdList = task.GetTimephasedData(project.Get(Prj.StartDate), project.Get(Prj.FinishDate));
76foreach (TimephasedData td in tdList)
77{
78 Console.WriteLine(td.Start.ToShortDateString() + " " + td.Value);
79}
이 코드에서는 각 작업 분포가 자원 할당에 적용되며, 생성된 시간대별 데이터가 표시됩니다. 이를 통해 작업 분포 유형에 따라 할당 기간에 작업이 어떻게 분산되는지 쉽게 확인할 수 있습니다.
자주 묻는 질문
Q: Microsoft Project에서 작업 분포란 무엇입니까?
- 작업 분포는 작업 기간 동안 자원의 노력이 어떻게 분배되는지를 정의합니다. 예를 들어, 균등은 작업을 고르게 적용하고, 종형은 중간에 더 많은 노력을 분배합니다.
Q: Aspose.Tasks는 시간대별 데이터를 어떻게 생성합니까?
- 이는 특정 메서드를 사용합니다.
TimeScaleData
해당 메서드는 프로젝트 시작 및 종료 날짜를 사용하여 각 할당에 대한 작업 분포를 계산합니다.
Q: 여러 할당에 대해 한 번에 시간대별 데이터를 생성할 수 있습니까?
- 예. 프로젝트의 모든 자원 할당을 반복 처리하여 각 할당에 대해 시간대별 데이터를 생성할 수 있습니다.
Q: 시간대별 데이터를 생성하려면 Microsoft Project를 설치해야 합니까?
- 아니요. Aspose.Tasks는 독립적으로 동작하며 시간대별 데이터를 읽고 계산하거나 내보내기 위해 Microsoft Project가 필요하지 않습니다.
결론
이 문서에서는 Aspose.Tasks for .NET을 사용하여 시간대별 데이터 자원 할당의 다양한 작업 분포에 대한 시간대별 데이터를 생성하는 방법을 살펴보았습니다. 다양한 분포를 적용하고 해당 데이터를 검색함으로써 개발자는 자원 작업량을 더 잘 분석하고 프로젝트 예측을 개선하며 프로그래밍 방식으로 상세한 사용 보고서를 생성할 수 있습니다.