MS Project 是一个著名的项目管理应用程序,它使管理人员更容易高效地执行项目管理活动。项目经理可以创建任务、添加资源以及将任务分配给特定项目中的资源。此外,他们可以定义时间表以及执行预算管理操作。但是,当经理需要自定义项目管理操作时,可能存在各种情况。此外,组织可能需要在 Web 或桌面应用程序中自动化项目管理。
对于这种情况,本文将介绍如何以编程方式执行基本的项目管理操作。特别是,您将学习如何从头开始创建项目、添加任务和资源,以及使用 Java 处理资源分配和日历。
Java 项目管理 API
Aspose.Tasks for Java 是一个项目管理 API,可让您从头开始创建 MS 项目文件。此外,您可以操作现有项目以添加一些修改。该 API 可让您无缝执行基本和高级项目管理操作。 Aspose.Tasks for Java 可以下载为 JAR 或使用以下配置安装在基于 Maven 的应用程序中。
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-tasks</artifactId>
<version>20.12</version>
<classifier>jdk18</classifier>
</dependency>
使用 Java 创建 MS 项目文件
MS Project 允许您以 MPP 或 XML 格式保存项目相关数据。因此,让我们按照以下步骤开始创建一个空的项目文件。
- 创建 Project 类的实例。
- 使用 Project.save(String, SaveFileFormat) 方法保存文件。
以下代码示例展示了如何使用 Java 创建 MS Project(.mpp 和 .xml)文件。
将 MS 项目文件另存为 MPP
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目实例
Project newProject = new Project();
// 将项目另存为 MPP 文件
newProject.save("Project1.mpp", SaveFileFormat.MPP);
将 MS 项目文件另存为 XML
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目实例
Project newProject = new Project();
// 将项目另存为 XML 文件
newProject.save("Project1.xml", SaveFileFormat.XML);
了解有关项目操作功能的更多信息:使用项目
使用 Java 将任务添加到项目
创建项目文件后,您可以开始向其中添加任务。以下是创建任务并将其添加到项目文件的步骤。
- 创建 Project 类的实例。
- 使用 Project.getRootTask().getChildren().add(string) 方法将新的摘要任务添加到项目的任务集合中。
- 使用 Task.getChildren.add(string) 方法将子任务添加到摘要任务。
- 使用 Project.save(String, SaveFileFormat) 方法保存项目文件。
以下代码示例展示了如何使用 C# 将任务添加到项目中。
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目
Project project = new Project();
// 添加任务
Task task = project.getRootTask().getChildren().add("Summary1");
// 添加子任务
Task subtask = task.getChildren().add("Subtask1");
// 将项目另存为 MPP/XML 文件
newProject.save("Project1.xml", SaveFileFormat.XML);
了解有关任务操作功能的更多信息:使用任务
使用 Java 将资源添加到项目
项目中的下一个重要事项是将分配给执行任务的资源。因此,在本节中,我们将向项目添加一些资源。以下是向项目添加资源的步骤。
- 使用 Project 类创建一个新项目或加载现有项目。
- 使用 Project.getResources().add(String) 方法添加资源。
- 使用 Project.save(String, SaveFileFormat) 方法保存项目文件。
以下代码示例展示了如何使用 Java 在项目中添加资源。
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目
Project project = new Project();
// 添加资源
Resource rsc = project.getResources().add("Rsc");
// 将项目另存为 MPP/XML 文件
newProject.save("Project1.mpp", SaveFileFormat.MPP);
了解有关资源操作功能的更多信息:使用资源
使用 Java 将任务分配给项目中的资源
添加任务和资源后,接下来就是将任务分配给相关资源。以下是在项目中执行资源分配的步骤。
- 使用 Project 类创建一个新项目或加载现有项目。
- 以您在前面部分中添加的相同方式添加任务和资源。
- 分别在 Task 和 Resource 对象中获取对任务和资源的引用。
- 使用 Project.getResourceAssignments().add(Task, Resource) 方法创建资源分配。
- 使用 Project.save(String, SaveFileFormat) 方法保存项目文件。
以下代码示例展示了如何使用 Java 在项目中创建资源分配。
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目
Project project = new Project();
// 添加任务
Task task = project.getRootTask().getChildren().add("Summary1");
// 添加资源
Resource rsc = project.getResources().add("Rsc");
// 将任务分配给资源
ResourceAssignment assn = project.getResourceAssignments().add(task, rsc);
// 将项目另存为 MPP/XML 文件
newProject.save("Project1.mpp", SaveFileFormat.MPP);
了解有关资源分配功能的更多信息:使用资源分配
使用 Java 将日历添加到项目中
日历是另一个用于定义项目时间线的重要实体。使用日历,您可以为项目创建完整的时间表。为了创建日历,您可以按照以下步骤操作:
- 使用 Project 类创建一个新项目或加载现有项目。
- 使用 Project.getCalendars().add(String) 方法创建一个新日历,并在 Calendar 对象中获取它的引用。
- 使用 Calendar.getWeekDays().add(WeekDay) 方法指定工作日。
- 在日历中设置工作时间。
- 使用 Project.save(String, SaveFileFormat) 方法保存项目文件。
以下代码示例展示了如何使用 Java 在项目中创建日历。
// 如需完整的示例和数据文件,请访问 https://github.com/aspose-tasks/Aspose.Tasks-for-Java
// 创建项目
Project project = new Project();
// 定义日历
Calendar cal = prj.getCalendars().add("Calendar1");
// 使用默认时间添加周一至周四的工作日
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Monday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Tuesday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Wednesday));
cal.getWeekDays().add(WeekDay.createDefaultWorkingDay(DayType.Thursday));
cal.getWeekDays().add(new WeekDay(DayType.Saturday));
cal.getWeekDays().add(new WeekDay(DayType.Sunday));
// 将星期五设为短工作日
WeekDay myWeekDay = new WeekDay(DayType.Friday);
// 设置工作时间,只有 DateTime 的时间部分很重要
WorkingTime wt1 = new WorkingTime();
java.util.Calendar calTime = java.util.Calendar.getInstance();
calTime.set(1,1,1,9,0,0);
Date date = calTime.getTime();
wt1.setFromTime(date);
calTime.set(1,1,1,12,0,0);
date = calTime.getTime();
wt1.setToTime(date);
WorkingTime wt2 = new WorkingTime();
calTime.set(1,1,1,13,0,0);
date = calTime.getTime();
wt2.setFromTime(date);
calTime.set(1,1,1,16,0,0);
date = calTime.getTime();
wt2.setToTime(date);
myWeekDay.getWorkingTimes().add(wt1);
myWeekDay.getWorkingTimes().add(wt2);
myWeekDay.setDayWorking(true);
cal.getWeekDays().add(myWeekDay);
// 将项目另存为 MPP/XML 文件
newProject.save("Project1.mpp", SaveFileFormat.MPP);
了解有关日历功能的更多信息:使用日历
获得免费许可证
您可以 获得免费的临时许可证 以便在没有评估限制的情况下试用 API。
结论
在本文中,您了解了如何使用 Java 从头开始创建 MS Project 文件的一些基本功能。特别是,您已经了解了如何在项目中添加任务、资源、资源分配和日历。您可以使用 documentation 探索有关 Java MS Project API 的更多信息。