在 Java 中創建 MS 項目文件

MS Project 是一個著名的項目管理應用程序,它使管理人員更容易高效地執行項目管理活動。項目經理可以創建任務、添加資源以及將任務分配給特定項目中的資源。此外,他們可以定義時間表以及執行預算管理操作。但是,當管理人員需要自定義項目管理操作時,可能會出現各種情況。此外,組織可能需要在 Web 或桌面應用程序中自動化項目管理。

對於此類情況,本文介紹瞭如何以編程方式執行基本的項目管理操作。特別是,您將學習如何從頭開始創建項目、添加任務和資源,以及使用 Java 處理資源分配和日曆。

Java 項目管理 API

Aspose.Tasks for Java 是一個項目管理 API,可讓您從頭開始創建 MS Project 文件。此外,您可以操作現有項目以添加一些修改。 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 項目(.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);

了解有關任務操作功能的更多信息:Working with Tasks

使用 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 文件的一些基本功能。特別是,您了解瞭如何在項目中添加任務、資源、資源分配和日曆。您可以使用 文檔 探索有關 Java MS Project API 的更多信息。

也可以看看