Читання завдань та ресурсів у VSTO та Aspose.Tasks

Приклади коду

vsto

Для виконання цього завдання необхідні наступні кроки:

  1. Створіть новий проект у Visual Studio.

  2. У Провіднику рішення клацніть правою кнопкою миші та виберіть Додати посилання, а потім виберіть вкладку COM Components.

  3. Виберіть Microsoft Project 12.0 Бібліотека об’єктів та натисніть кнопку ОК.

  4. Це імпортує простір імен Microsoft.office.interop.msproject на початку коду. Використовуйте код із наступного прикладу для читання завдань та ресурсів.

 1//Create Application object
 2
 3Application projectApplication = new MSProject.Application();
 4
 5object missingValue = System.Reflection.Missing.Value;
 6
 7//Open an MPP file
 8
 9projectApplication.FileOpenEx("Project1.mpp",
10
11    missingValue, missingValue, missingValue, missingValue,
12
13    missingValue, missingValue, missingValue, missingValue,
14
15    missingValue, missingValue, PjPoolOpen.pjPoolReadOnly,
16
17    missingValue, missingValue, missingValue, missingValue,
18
19    missingValue);
20
21//Create a Project object by assigning active project
22
23Project project = projectApplication.ActiveProject;
24
25//Loop through each task and read information related to tasks
26
27foreach (Task task in project.Tasks)
28
29{
30
31    Console.WriteLine("Reading Task " + task.Name);
32
33    Console.WriteLine("\nID: " + task.ID);
34
35    Console.WriteLine("Start: " + task.Start);
36
37    Console.WriteLine("Finish: " + task.Finish);
38
39    Console.WriteLine("\n===========================\n");
40
41    //Read any other information you need
42
43}
44
45//Loop through each resource and read information related to resources
46
47foreach (Resource resource in project.Resources)
48
49{
50
51    string resourceType = null;
52
53    switch (resource.Type)
54
55    {
56
57        case PjResourceTypes.pjResourceTypeCost:
58
59            resourceType = "Cost";
60
61            break;
62
63        case PjResourceTypes.pjResourceTypeMaterial:
64
65            resourceType = "Material";
66
67            break;
68
69        case PjResourceTypes.pjResourceTypeWork:
70
71            resourceType = "Work";
72
73            break;
74
75    }
76
77    Console.WriteLine("Reading Resource " + resource.Name);
78
79    Console.WriteLine("\nID: " + resource.ID);
80
81    Console.WriteLine("Type: " + resourceType);
82
83    Console.WriteLine("\n===========================\n");
84
85    //Read any other information you need
86
87}
88
89Console.ReadLine();

Цей приклад демонструє, як використовувати VSTO (інструменти Visual Studio для Office) з бібліотекою Interop Project Microsoft для читання завдань та ресурсів з файлу MPP. Він починається з створення нового екземпляра Application та відкриття файлу проекту за допомогою fileOpenex. Активний проект доступний за допомогою ActiveProject, а потім дві петлі ітератують через колекції" Ресурси “та” Ресурси “. Для кожного завдання та ресурсу він друкує такі деталі, як ідентифікатор, ім’я, дати початку/закінчення та тип ресурсів. Цей підхід вимагає посилання на бібліотеку об’єктів Microsoft Project 12.0 та за допомогою Microsoft.office.interop.msproject простору імен.

Aspose.Tasks

Для виконання цього завдання необхідні наступні кроки:

  1. Створіть новий проект у Visual Studio.

  2. У Провіднику рішення клацніть правою кнопкою миші та виберіть Додати посилання, а потім виберіть вкладку .NET.

  3. Виберіть aspope.tasks, а потім натисніть кнопку ОК.

  4. Це імпортує простір імен aspopy.tasks на початку коду. Використовуйте код із наступного прикладу для читання завдань та ресурсів.

 1ProjectReader reader = new ProjectReader();
 2
 3Project project = reader.Read("Project.mpp");
 4
 5ArrayList allTasks =new ArrayList(project.RootTask.Children);
 6
 7foreach (Aspose.Tasks.Task task in allTasks)
 8
 9{
10
11    Console.WriteLine("Reading Task " + task.Name);
12
13    Console.WriteLine("\nID: " + task.Id);
14
15    Console.WriteLine("Start: " + task.Start);
16
17    Console.WriteLine("Finish: " + task.Finish);
18
19    Console.WriteLine("\n===========================\n");
20
21}
22
23
24
25//Loop through each resource and read information related to resources
26
27foreach (Resource resource in project.Resources)
28
29{
30
31    string resourceType = null;
32
33    switch (resource.Type)
34
35    {
36
37        case ResourceType.Material:
38
39            resourceType = "Material";
40
41            break;
42
43        case ResourceType.Work:
44
45            resourceType = "Work";
46
47            break;
48
49        default:
50
51            resourceType = "Cost";
52
53            break;
54
55    }
56
57
58
59    Console.WriteLine("Reading Resource " + resource.Name);
60
61    Console.WriteLine("\nID: " + resource.Id);
62
63    Console.WriteLine("Type: " + resourceType);
64
65    Console.WriteLine("\n===========================\n");
66
67}

Цей приклад показує, як читати завдання та ресурси з файлу Microsoft Project за допомогою Aspose.Tasks для .NET. По -перше, створюється новий проект Visual Studio, і посилання на * Aspose.Tasks * додається через вкладку .NET. Projectreader використовується для завантаження файлу MPP, і всі дочірні завдання кореневого завдання ітеруються для відображення своїх деталей, таких як ідентифікатор, ім’я, старт та закінчення. Потім код петлі за допомогою ресурсів проекту, визначає їх тип (робота, матеріал чи вартість) та виводить відповідну інформацію. Це демонструє простий спосіб доступу та огляду даних проекту за допомогою ASPOPE.TASKS API.

Завантажити зразок коду

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.