VSTO 및 Aspose.Tasks의 작업에 대한 링크 추가
코드 예제
vsto
VSTO를 사용하여 작업을 연결하려면 :
Visual Studio에서 새로운 프로젝트를 만듭니다.
솔루션 탐색기에서 마우스 오른쪽 버튼을 클릭하고 참조 추가를 선택하십시오.
COM 구성 요소 탭을 선택하고 Microsoft Project 12.0 Object Library.click 다음 예제의 코드를 사용하여 작업을 연결하십시오.
1Microsoft.office.interop.msproject.application projectApplication = new MSProject.Application ();
2
3오브젝트 MissingValue = System.Reflection.Missing.Value;
4
5projectApplication.fileopenex ( "project.mpp",
6
7 missingValue, missingValue, missingValue, missingValue,
8
9 missingValue, missingValue, missingValue, missingValue,
10
11 missingValue, missingValue, PjPoolOpen.pjPoolReadOnly,
12
13 missingValue, missingValue, missingValue, missingValue,
14
15 missingValue);
16
17Microsoft.office.interop.msproject.project project = projectApplication.ActiveProject;
18
19project.tasks.get_uniqueid (2) .TaskDependencies.add (project.tasks.get_uniqueId (1), pjtaskLinkType.pjfinishTostart);
20
21project.tasks.get_uniqueid (3) .TaskDependencies.add (project.tasks.get_uniqueId (2), pjtaskLinkType.pjfinishTostart);
22
23project.tasks.get_uniqueid (4) .TaskDependencies.add (project.tasks.get_uniqueid (3), pjtasklinktype.pjfinishtostart);
24
25project.tasks.get_uniqueid (5) .TaskDependencies.add (project.tasks.get_uniqueId (4), pjtaskLinkType.pjfinishTostart);
26
27project.tasks.get_uniqueid (5) .TaskDependencies.add (project.tasks.get_uniqueid (2), pjtasklinktype.pjfinishtostart);
28
29foreach (task tsk in project.tasks)
30
31{
32
33 foreach (TaskDependency dep in project.Tasks.get_UniqueID(tsk.ID).TaskDependencies)
34
35 {
36
37 Console.WriteLine("From ID = " + dep.From.ID + "=>To ID = " + dep.To.ID);
38
39 }
40
41 Console.WriteLine("____________________________________________________________");
42
43}
44
45projectApplication.fileCloseall (Microsoft.Office.interop.msproject.pjsavetype.pjsave);
이 C# 코드는 Microsoft Project Interop을 사용하여 기존.mpp
파일을 열고 프로그래밍 방식으로 작업 종속성을 추가합니다. 먼저application '을 통해 Microsoft 프로젝트 인스턴스를 초기화하고
“project.mpp”``읽기 전용 풀 모드 파일을 엽니 다. 그런 다음 활성 프로젝트를 검색하고 고유 한 ID를 기반으로 작업간에 여러 마감 처리 종속성을 정의합니다. 구체적으로, 작업 2는 작업 2 및 작업 4의 작업 2, 작업 4의 작업 1, 작업 3 및 작업 4의 작업 3에 의존하도록 설정되어 있습니다.이 종속성을 설정 한 후 코드는 프로젝트의 모든 작업을 통해 반복되며 정의 된 종속성 관계를 콘솔과 인쇄하여 어떤 작업이 전행기 및 후속인지를 보여줍니다. 마지막으로 프로젝트 파일을 저장하고 닫습니다. 이 코드는 개발자가 COM Interop을 사용하여 Microsoft Project에서 작업 관계 구성을 자동화하는 방법을 보여줍니다. 이는 Microsoft 프로젝트를 시스템에 설치해야합니다.
Aspose.Tasks
Aspose.Tasks for .net을 사용하여 프로젝트의 작업을 연결하려면 :
Visual Studio에서 새로운 프로젝트를 만듭니다.
솔루션 탐색기에서 마우스 오른쪽 버튼을 클릭하고 참조 추가를 선택하십시오.
.NET 탭을 선택하고 Aspose.Tasks.click Ok을 선택하면 코드 시작시 Aspose.Tasks 네임 스페이스를 가져옵니다. 다음 예제의 코드를 사용하여 작업을 연결하십시오.
1projectreader reader = new projectreader ();
2
3FILESTREAM ST = NEW FILESTREAM ( "Project.MPP", FileMode.open);
4
5project prj = reader.read (st);
6
7St.Close ();
8
9taskLink taskLink = new TaskLink (prj.roottask.children [0] Aspose.Tasks.task, prj.roottask.children [1] Aspose.Tasks.task, tasklinktype.finishtostart);
10
11prj.addtasklink (tasklink);
12
13taskLink = new TaskLink (prj.roottask.children [1] Aspose.Tasks.task, prj.roottask.children [2] Aspose.Tasks.task, tasklinktype.finishtostart);
14
15prj.addtasklink (tasklink);
16taskLink = new TaskLink (prj.roottask.children [2] Aspose.Tasks.task, prj.roottask.children [3] Aspose.Tasks.task, tasklinktype.finishtostart);
17
18prj.addtasklink (tasklink);
19
20taskLink = new TaskLink (prj.roottask.children [3] Aspose.Tasks.task, prj.roottask.children [4] Aspose.Tasks.task, tasklinktype.finishtostart);
21
22prj.addtasklink (tasklink);
23
24taskLink = new TaskLink (prj.roottask.children [1] Aspose.Tasks.task, prj.roottask.children [4] Aspose.Tasks.task, tasklinktype.finishtostart);
25
26prj.addtasklink (tasklink);
27
28ArrayList AllLinks = New ArrayList (prj.taskLinks);
29
30foreach (AllLinks의 TaskLink TaskLink1)
31
32{
33
34 Console.WriteLine("From ID = " + taskLink1.PredTask.Id + "=>To ID = " + taskLink1.SuccTask.Id);
35
36 Console.WriteLine("________________________________________");
37
38}
39
40prj.save ( "project1.mpp", Aspose.Tasks.saving.savefileformat.mpp);
이 C# 코드는 기존 Microsoft 프로젝트 파일 (.mpp
)에 작업 종속성 (작업 링크)을 추가하고 업데이트 된 결과를 저장하는 방법 Aspose.Tasks를 사용하는 방법을 보여줍니다. filestream '을 사용하여
“project.mpp”파일을 열고
projectreader’로 읽는 것으로 시작합니다. 그런 다음 코드는 프로그래밍 방식으로 몇 개의 마감 처리 ** 연속 작업 (첫 번째부터 다섯 번째 자식 작업)과 두 번째 작업과 다섯 번째 작업 사이의 추가 종속성간에 종속성을 생성합니다. 각 종속성은addtasklink ()
를 사용하여 프로젝트에 추가됩니다. 모든 종속성이 추가되면 코드는 모든 작업 링크를 ‘ArrayList’로 수집하고 전임자 및 후속 작업 ID를 표시하여 각 관계를 콘솔과 인쇄합니다. 마지막으로 프로젝트는 Microsoft 프로젝트 형식의 새 파일 "Project1.mpp"
에 저장됩니다.