Chuyển đổi MPP sang Excel bằng Java

Tệp MPP là một dự án được tạo bởi Microsoft Project. Nó cho phép tổ chức, theo dõi và duy trì các dự án. Nó chứa các nhiệm vụ, tài nguyên, nhiệm vụ, tiến trình, ngân sách và các thông tin liên quan đến dự án khác. Chúng tôi có thể dễ dàng xuất dữ liệu dự án từ tệp MPP sang bảng tính Excel (XLSX) theo chương trình trong Java. Trong bài viết này, chúng ta sẽ học cách chuyển đổi MPP sang Excel trong Java.

Các chủ đề sau sẽ được đề cập trong bài viết này:

Java API để chuyển đổi MPP sang Excel

Để chuyển đổi tệp MPP sang Excel, chúng tôi sẽ sử dụng API Aspose.Tasks for Java. Nó cho phép tạo, chỉnh sửa hoặc thao tác các tệp Microsoft Project theo lập trình trong các ứng dụng Java. Vui lòng tải xuống JAR của API hoặc thêm cấu hình pom.xml sau vào ứng dụng Java dựa trên 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>22.4</version>
    <classifier>jdk18</classifier>
</dependency>

Chuyển đổi MPP sang Excel trong Java

Chúng tôi có thể chuyển đổi tệp MPP thành tệp Excel bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp MPP bằng lớp Dự án.
  2. Cuối cùng, gọi phương thức save() để lưu nó dưới dạng XLSX. Nó lấy đường dẫn tệp đầu ra và SaveFileFormat làm đối số.

Mẫu mã sau đây cho thấy cách chuyển đổi MPP sang Excel bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi MPP sang XLSX.
// Tải tệp Dự án đầu vào
Project project = new Project("D:\\Files\\Tasks\\Project.mpp");

// Lưu dự án dưới dạng XLSX
project.save("D:\\Files\\Tasks\\Project.xlsx", SaveFileFormat.Xlsx);
Chuyển đổi MPP sang Excel trong Java.

Chuyển đổi MPP sang Excel trong Java.

Chuyển đổi MPP sang Excel với các tùy chọn nâng cao

Chúng tôi cũng có thể áp dụng các cài đặt khác nhau trong khi chuyển đổi tệp MPP sang Excel. Với mục đích này, API cung cấp lớp XlsxOptions cho phép chỉ định các tùy chọn bổ sung khi hiển thị các trang dự án sang XLSX. Chúng tôi có thể chỉ định các tùy chọn lưu XLSX bằng cách làm theo các bước dưới đây:

  1. Đầu tiên, tải tệp MPP bằng lớp Dự án.
  2. Tiếp theo, tạo một thể hiện của lớp XlsxOptions.
  3. Sau đó, đặt các tùy chọn khác nhau như Kích thước trang, Mã hóa, Chế độ xem tài nguyên, Chế độ xem phân công, v.v.
  4. Cuối cùng, gọi phương thức save() để lưu nó dưới dạng XLSX. Nó lấy đường dẫn tệp đầu ra và SaveOptions làm đối số.

Mẫu mã sau đây cho thấy cách chuyển đổi MPP sang XLSX với các tùy chọn nâng cao bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi MPP sang XLSX với các tùy chọn nâng cao.
// Tải tệp Dự án đầu vào
Project project = new Project("D:\\Files\\Tasks\\Project.mpp");

// Khởi tạo đối tượng lớp XlsxOptions
XlsxOptions options = new XlsxOptions();

// Đặt giá trị Timescale thành tháng
options.setTimescale(Timescale.Months);

// Đặt chế độ xem biểu đồ Gantt
options.setView(ProjectView.getDefaultGanttChartView());

// Đặt kích thước trang
options.setPageSize(PageSize.A3);

// Kết xuất dự án đến một trang duy nhất
options.setRenderToSinglePage(true);

// Đặt mã hóa UTF8
options.setEncoding(Charset.forName("UTF8"));

// Đặt chế độ xem trang tài nguyên
options.setResourceView(ProjectView.getDefaultResourceSheetView());

// Đặt chế độ xem bài tập
options.setAssignmentView(ProjectView.getDefaultAssignmentView());

// Đặt định dạng bản trình bày làm tài nguyên sử dụng
options.setPresentationFormat(PresentationFormat.ResourceUsage);

// Lưu dự án dưới dạng XLSX
project.save("D:\\Files\\Tasks\\ProjectWithOptions.xlsx", options);

Nhận giấy phép miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để dùng thử thư viện mà không có giới hạn đánh giá.

Sự kết luận

Trong bài viết này, chúng tôi đã học cách:

  • lưu dữ liệu MS Project dưới dạng tệp XLSX trong Java;
  • thiết lập các tùy chọn khác nhau để xuất dữ liệu từ MPP sang Excel theo lập trình.

Ngoài ra, bạn có thể tìm hiểu thêm về Aspose.Tasks cho Java API bằng cách sử dụng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm