在 Java 中创建 MS 项目文件

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 允许您以 MPPXML 格式保存项目相关数据。因此,让我们按照以下步骤开始创建一个空的项目文件。

以下代码示例展示了如何使用 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 将任务添加到项目

创建项目文件后,您可以开始向其中添加任务。以下是创建任务并将其添加到项目文件的步骤。

以下代码示例展示了如何使用 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 将资源添加到项目

项目中的下一个重要事项是将分配给执行任务的资源。因此,在本节中,我们将向项目添加一些资源。以下是向项目添加资源的步骤。

以下代码示例展示了如何使用 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 将任务分配给项目中的资源

添加任务和资源后,接下来就是将任务分配给相关资源。以下是在项目中执行资源分配的步骤。

以下代码示例展示了如何使用 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 将日历添加到项目中

日历是另一个用于定义项目时间线的重要实体。使用日历,您可以为项目创建完整的时间表。为了创建日历,您可以按照以下步骤操作:

以下代码示例展示了如何使用 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 的更多信息。

也可以看看