อ่านแผนภูมิแกนต์ของโครงการโดยใช้ Java

MS Project เป็นซอฟต์แวร์การจัดการโครงการยอดนิยม ซึ่งใช้กันอย่างแพร่หลายในการจัดระเบียบ จัดการ และติดตามกิจกรรมโครงการอย่างมีประสิทธิภาพ อนุญาตให้สร้างงาน เพิ่มทรัพยากร จัดสรรงานให้กับทรัพยากร ติดตามความคืบหน้า และจัดการกิจกรรมที่เกี่ยวข้องกับงบประมาณ มุมมองแผนภูมิแกนต์เป็นมุมมองเริ่มต้นของโครงการ แสดงรายการงานโครงการและแสดงความสัมพันธ์ระหว่างกัน นอกจากนี้ยังแสดงกำหนดการของโครงการโดยใช้แถบ Gantt ในบทความนี้ เราจะเรียนรู้วิธีการอ่านแผนภูมิ Gantt ของโครงการ MS โดยใช้ Java

หัวข้อต่อไปนี้จะครอบคลุมในบทความนี้:

แผนภูมิแกนต์ในโครงการ Microsoft คืออะไร

แผนภูมิแกนต์เป็นแผนภูมิแท่งประเภทหนึ่งที่แสดงกำหนดการของโครงการ เป็นการแสดงกราฟิกของงานโครงการเทียบกับเวลาและนำเสนอมุมมองจากมุมสูงของโครงการทั้งหมด มุมมองแผนภูมิแกนต์ในโครงการ Microsoft แสดงสิ่งต่อไปนี้:

  • ตารางโปรเจ็ค
  • ประมาณการเวลา
  • ทรัพยากรโครงการและสมาชิกในทีม
  • ลำดับความสำคัญของงาน
  • การพึ่งพางาน

Java API เพื่ออ่านแผนภูมิแกนต์ของโครงการ

สำหรับการอ่านมุมมองแผนภูมิ Gantt ของโครงการจากไฟล์ MPP เราจะใช้ API ของ Aspose.Tasks for Java อนุญาตให้สร้าง แก้ไข หรือจัดการไฟล์ Microsoft Project โดยทางโปรแกรมในแอปพลิเคชัน Java คลาส Project ของ API แสดงถึงโปรเจ็กต์ เป็นคลาสหลักที่เปิดเผยวิธีการต่าง ๆ เพื่อทำหน้าที่ต่าง ๆ นอกจากนี้ยังอนุญาตให้อ่านรูปแบบการจัดการโครงการที่รองรับ เช่น MPP, MPT, MPX และ XML คลาส GanttChartView ของ API แสดงถึงมุมมองแผนภูมิ Gantt แสดงคุณสมบัติและวิธีการต่างๆ ในการทำงานกับแผนภูมิ Gantt โดยทางโปรแกรม

โปรด ดาวน์โหลด JAR ของ API หรือเพิ่มการกำหนดค่า pom.xml ต่อไปนี้ในแอปพลิเคชัน Java ที่ใช้ 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.5</version>
    <classifier>jdk18</classifier>
</dependency>

อ่านมุมมองแผนภูมิแกนต์และดึงสไตล์บาร์

คลาส GanttBarStyle ของ API แสดงถึงลักษณะแท่งที่ MS Project ใช้ในมุมมองแผนภูมิ Gantt เราสามารถอ่านมุมมองแผนภูมิแกนต์และดึงรูปแบบแท่งได้โดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก โหลดไฟล์โครงการโดยใช้คลาสโครงการ
  2. ถัดไป รับมุมมองเริ่มต้นจาก ViewCollection ตามดัชนี
  3. จากนั้น สร้างอินสแตนซ์ของคลาส GanttChartView และมุมมอง typecast
  4. หรืออ่านคุณสมบัติพื้นฐานและแสดงข้อมูล
  5. หลังจากนั้น รับรายการสไตล์แท่งของมุมมองแผนภูมิ Gantt โดยใช้ getBarStyles()
  6. สุดท้าย วนซ้ำสไตล์บาร์เป็นวัตถุคลาส GanttBarStyle และแสดงค่า

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านลักษณะแท่งของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    View view = project.getViews().toList().get(0);
    GanttChartView gcView = (GanttChartView) view;

    // แสดงข้อมูลพื้นฐาน
    System.out.println("Bar Rounding: " + gcView.getBarRounding());
    System.out.println("Show Bar Splits: " + gcView.getShowBarSplits());
    System.out.println("Show Drawings: " + gcView.getShowDrawings());
    System.out.println("RollUp Gantt Bars: " + gcView.getRollUpGanttBars());
    System.out.println("Hide Rollup Bars When Summary Expanded: " + gcView.getHideRollupBarsWhenSummaryExpanded());
    System.out.println("Bar Size: " + gcView.getBarSize());
    System.out.println("Bar Styles count: " + gcView.getBarStyles().size());
    System.out.println("-----------------------------------------------");

    // แสดงรูปแบบแถบ
   for (GanttBarStyle barStyle : gcView.getBarStyles())
    {	
      System.out.println("Row: " +  barStyle.getRow());
        System.out.println("Name: " +  barStyle.getName());
        System.out.println("ShowFor: " +  barStyle.getShowForTaskUid());
        System.out.println("From:" +  getbarStylesFromToName(barStyle.getFrom()));
        System.out.println("To:" +   getbarStylesFromToName(barStyle.getTo()));
        System.out.println("Middle Shape:" +   getbarStylesMiddleShapeName(barStyle.getMiddleShape()));
        System.out.println("Middle Shape Color:" + barStyle.getMiddleShapeColor());
        System.out.println("Start Shape:" +   getbarStylesShapeName(barStyle.getStartShape()));
        System.out.println("End Shape:" +   getbarStylesShapeName(barStyle.getEndShape()));
        System.out.println("End Shape Color:" + barStyle.getEndShapeColor());
        System.out.println("-----------------------------------------------");
    }
}

// ฟังก์ชันนี้ส่งคืนชื่อฟิลด์
private static String getbarStylesFromToName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = Field.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// ฟังก์ชันนี้ส่งคืนชื่อรูปร่างตรงกลาง
private static String getbarStylesMiddleShapeName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = GanttBarMiddleShape.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// ฟังก์ชันนี้ส่งคืนชื่อรูปร่างเริ่มต้นหรือสิ้นสุด
private static String getbarStylesShapeName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = GanttBarEndShape.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Bar Rounding: true
Show Bar Splits: true
Show Drawings: true
RollUp Gantt Bars: false
Hide Rollup Bars When Summary Expanded: false
Bar Size: 3
Bar Styles count: 40
-----------------------------------------------
Row: 1
Name: Task
ShowFor: null
From:TaskStart
To:TaskFinish
Middle Shape:RectangleBar
Middle Shape Color:java.awt.Color[r=0,g=0,b=255]
Start Shape:NoBarEndShape
End Shape:NoBarEndShape
End Shape Color:java.awt.Color[r=0,g=0,b=0]
-----------------------------------------------
...

อ่านเส้นตารางของมุมมองแผนภูมิแกนต์ใน Java

คลาส เส้นตาราง ของ API แสดงถึงเส้นตารางที่ปรากฏในมุมมองแผนภูมิแกนต์ เราสามารถอ่านสี ช่วงเวลา รูปแบบ และประเภทของเส้นกริดได้โดยทำตามขั้นตอนต่อไปนี้

  1. ขั้นแรก โหลดไฟล์โครงการโดยใช้คลาสโครงการ
  2. ถัดไป รับมุมมองเริ่มต้นจาก ViewCollection ตามดัชนี
  3. จากนั้น สร้างอินสแตนซ์ของคลาส GanttChartView และมุมมอง typecast
  4. หลังจากนั้น รับรายการเส้นตารางของมุมมองแผนภูมิ Gantt โดยใช้ getGridlines()
  5. สุดท้าย วนซ้ำเส้นกริดเป็นวัตถุคลาส Gridlines และแสดงค่า

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านเส้นตารางของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลเส้นตาราง
    System.out.println("Gridlines Count: " + gcView.getGridlines().size());
    Gridlines gridlines = gcView.getGridlines().get(0);

    System.out.println("Gridlines Type: " + gridlines.getType());
    System.out.println("Gridlines Interval: " + gridlines.getInterval());
    System.out.println("Gridlines NormalColor: " + gridlines.getNormalColor());
    System.out.println("Gridlines NormalPattern: " + getLinePatternName(gridlines.getNormalPattern()));
    System.out.println("Gridlines IntervalPattern: " +gridlines.getIntervalPattern());
    System.out.println("Gridlines IntervalColor: " + gridlines.getIntervalColor());
}

// ฟังก์ชันนี้ส่งคืนชื่อรูปแบบเส้น
private static String getLinePatternName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = LinePattern.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Gridlines Count: 14
Gridlines Type: 3
Gridlines Interval: 0
Gridlines NormalColor: java.awt.Color[r=192,g=192,b=192]
Gridlines NormalPattern: Solid
Gridlines IntervalPattern: 0
Gridlines IntervalColor: java.awt.Color[r=192,g=192,b=192]

แยกรูปแบบข้อความของมุมมองแผนภูมิแกนต์ใน Java

คลาส TextStyle ของ API แสดงถึงรูปแบบการมองเห็นของข้อความสำหรับรายการในมุมมองแผนภูมิ Gantt เราสามารถอ่านสี สีพื้นหลัง ฟอนต์ และรูปแบบฟอนต์ได้โดยทำตามขั้นตอนต่อไปนี้

  1. ขั้นแรก โหลดไฟล์โครงการโดยใช้คลาสโครงการ
  2. ถัดไป รับมุมมองเริ่มต้นจาก ViewCollection ตามดัชนี
  3. จากนั้น สร้างอินสแตนซ์ของคลาส GanttChartView และมุมมอง typecast
  4. หลังจากนั้น รับรายการรูปแบบข้อความของมุมมองแผนภูมิ Gantt โดยใช้ getTextStyles()
  5. สุดท้าย เริ่มต้นวัตถุคลาส TextStyle สำหรับสไตล์ข้อความแรกและแสดงค่า

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านลักษณะข้อความของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลรูปแบบข้อความ
    System.out.println("Text Styles Count: " + gcView.getTextStyles().size());
    TextStyle textStyle = gcView.getTextStyles().get(0);

    System.out.println("Background Color: " + textStyle.getBackgroundColor());
    System.out.println("Text Color: " + textStyle.getColor());
    System.out.println("Font Family: " + textStyle.getFont().getFontFamily());
    System.out.println("Font Size: " + textStyle.getFont().getSize());
    System.out.println("Font Style: " + getFontStyleName(textStyle.getFont().getStyle()));
}

// ฟังก์ชันนี้ส่งคืนชื่อรูปแบบตัวอักษร
private static String getFontStyleName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = FontStyles.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
Text Styles Count: 19
Background Color: java.awt.Color[r=0,g=0,b=0]
Text Color: java.awt.Color[r=0,g=0,b=255]
Font Family: Arial
Font Size: 8.0
Font Style: Regular

ดึงเส้นความคืบหน้าของมุมมองแผนภูมิ Gantt ใน Java

เส้นความคืบหน้าปรากฏในมุมมองแผนภูมิแกนต์โดยแสดงว่างานล้าหลังหรือตรงตามกำหนดเวลา เราสามารถอ่านคุณสมบัติต่างๆ ของเส้นความคืบหน้าได้โดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก โหลดไฟล์โครงการโดยใช้คลาสโครงการ
  2. ถัดไป รับมุมมองเริ่มต้นจาก ViewCollection ตามดัชนี
  3. จากนั้น สร้างอินสแตนซ์ของคลาส GanttChartView และมุมมอง typecast
  4. หลังจากนั้น รับรายการเส้นความคืบหน้าของมุมมองแผนภูมิ Gantt โดยใช้ getProgressLines()
  5. สุดท้าย แสดงค่าแอตทริบิวต์ของเส้นความคืบหน้า

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการอ่านเส้นความคืบหน้าของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลรายการความคืบหน้า
    System.out.println("ProgressLines.BeginAtDate: " + gcView.getProgressLines().getBeginAtDate().toString());
    System.out.println("ProgressLines.isBaselinePlan: " + gcView.getProgressLines().isBaselinePlan());
    System.out.println( "ProgressLines.DisplaySelected: " + gcView.getProgressLines().getDisplaySelected());
    System.out.println("ProgressLines.SelectedDates.Count: " + gcView.getProgressLines().getSelectedDates().size());

    System.out.println("ProgressLines.DisplayAtRecurringIntervals: " + gcView.getProgressLines().getDisplayAtRecurringIntervals());
    System.out.println("ProgressLines.RecurringInterval.Interval: " +  gcView.getProgressLines().getRecurringInterval().getInterval()  );
    System.out.println("ProgressLines.RecurringInterval.WeeklyDays.Count" +  gcView.getProgressLines().getRecurringInterval().getWeeklyDays().size());
    System.out.println("RecurringInterval.DayType.Friday: "  +  (int) gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(1));
    System.out.println("RecurringInterval.DayType.Saturday: "  + (int)gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(2));
    System.out.println("RecurringInterval.DayType.Sunday: " +  (int)gcView.getProgressLines().getRecurringInterval().getWeeklyDays().get(0));

    System.out.println("ProgressLines.ShowDate" + gcView.getProgressLines().getShowDate());

    System.out.println("ProgressLines.ProgressPointShape: " +  gcView.getProgressLines().getProgressPointShape());
    System.out.println("ProgressLines.ProgressPointColor: " +  gcView.getProgressLines().getProgressPointColor());
    System.out.println("ProgressLines.LineColor: " + gcView.getProgressLines().getLineColor());
    System.out.println("ProgressLines.LinePattern" +  gcView.getProgressLines().getLinePattern());

    System.out.println("ProgressLines.OtherProgressPointShape: " + gcView.getProgressLines().getOtherProgressPointShape());
    System.out.println("ProgressLines.OtherProgressPointColor: " + gcView.getProgressLines().getOtherProgressPointColor().toString());
    System.out.println("ProgressLines.OtherLineColor: " + gcView.getProgressLines().getOtherLineColor());
}

อ่าน Bottom Timescale Tier ใน Java

มาตราส่วนเวลาแสดงหน่วยเวลา วัน เดือน ปีปฏิทิน หรือปีงบประมาณ มี ระดับของมาตราส่วนเวลา สามรายการในมุมมองโครงการเพื่อแสดงค่าของมาตราส่วนเวลาสำหรับแต่ละระดับ เช่น จำนวน หน่วย ป้ายกำกับ การจัดตำแหน่ง ฯลฯ เราสามารถอ่านระดับมาตราส่วนเวลาด้านล่างได้โดยทำตามขั้นตอนด้านล่าง:

  1. ขั้นแรก โหลดไฟล์โครงการโดยใช้คลาสโครงการ
  2. ถัดไป รับมุมมองเริ่มต้นจาก ViewCollection ตามดัชนี
  3. จากนั้น สร้างอินสแตนซ์ของคลาส GanttChartView และมุมมอง typecast
  4. หลังจากนั้น ให้ตั้งค่าระดับขอบเขตเวลาด้านล่างสุดของมุมมองโดยใช้ getBottomTimescaleTier()
  5. สุดท้าย แสดงค่าลำดับชั้นเวลาด้านล่าง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านระดับเวลาด้านล่างของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลระดับ Timescale Tier ด้านล่าง
    System.out.println("BottomTimescaleTier Count: " + gcView.getBottomTimescaleTier().getCount());
    System.out.println("BottomTimescaleTier Unit: " + getTimescaleUnitName(gcView.getBottomTimescaleTier().getUnit()));
    System.out.println("BottomTimescaleTier UsesFiscalYear: " + gcView.getBottomTimescaleTier().getUsesFiscalYear());
    System.out.println("BottomTimescaleTier Alignment: " + getAlignmentName(gcView.getBottomTimescaleTier().getAlignment()));
    System.out.println("BottomTimescaleTier ShowTicks: " + gcView.getBottomTimescaleTier().getShowTicks());
    System.out.println("BottomTimescaleTier Label: " + getDateLabelName(gcView.getBottomTimescaleTier().getLabel()));
}

// ฟังก์ชันนี้ส่งคืนชื่อ Timescale Data Lable
private static String getDateLabelName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = DateLabel.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// ฟังก์ชันนี้ส่งคืนชื่อการจัดตำแหน่ง
private static String getAlignmentName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = StringAlignment.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}

// ฟังก์ชันนี้ส่งคืนชื่อหน่วยมาตราส่วนเวลา
private static String getTimescaleUnitName(int val) throws IllegalArgumentException, IllegalAccessException {
  String name = null;
  java.lang.reflect.Field[] fields = TimescaleUnit.class.getDeclaredFields();
 for (java.lang.reflect.Field f : fields) {
    int fVal = f.getInt(f);
      if( fVal == val)
      {
        name = f.getName();
      }
  }
  return name;
}
BottomTimescaleTier Count: 2
BottomTimescaleTier Unit: Days
BottomTimescaleTier UsesFiscalYear: true
BottomTimescaleTier Alignment: Center
BottomTimescaleTier ShowTicks: true
BottomTimescaleTier Label: DayOfMonthDd

อ่าน Middle Timescale Tier ใน Java

ในทำนองเดียวกัน เราสามารถอ่านระดับเวลากลางได้โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราจะรับการตั้งค่าของระดับเวลากลางของมุมมองโดยใช้ getMiddleTimescaleTier() ในขั้นตอนที่ 4

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านระดับเวลากลางของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลระดับ Middle Timescale
    System.out.println("MiddleTimescaleTier Count: " + gcView.getMiddleTimescaleTier().getCount());
    System.out.println("TimescaleUnit Weeks: " +  getTimescaleUnitName(gcView.getMiddleTimescaleTier().getUnit()));
    System.out.println("MiddleTimescaleTier Alignment: " + getAlignmentName(gcView.getMiddleTimescaleTier().getAlignment()));
    System.out.println("MiddleTimescaleTier ShowTicks: " + gcView.getMiddleTimescaleTier().getShowTicks());
    System.out.println("MiddleTimescaleTier Label: " +  getDateLabelName(gcView.getMiddleTimescaleTier().getLabel()));
}
MiddleTimescaleTier.Count: 1
TimescaleUnit.Weeks: Months
MiddleTimescaleTier.Alignment: Center
MiddleTimescaleTier.ShowTicks: true
MiddleTimescaleTier.Label: MonthMmmmYyyy

ดึง Timescale Tier สูงสุดใน Java

นอกจากนี้เรายังสามารถอ่านระดับเวลาสูงสุดได้โดยทำตามขั้นตอนที่กล่าวถึงก่อนหน้านี้ อย่างไรก็ตาม เราจะรับการตั้งค่าของระดับเวลาสูงสุดของมุมมองโดยใช้ getTopTimescaleTier() ในขั้นตอนที่ 4

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการอ่านระดับบนสุดของไทม์สเกลของมุมมองแผนภูมิ Gantt ใน Java

public static void main(String[] args) throws Exception
{
    // เส้นทางไปยังไดเร็กทอรีเอกสาร
    String dataDir = "C:\\Files\\Tasks\\";

    // โหลดโครงการ
    Project project = new Project(dataDir + "Project.mpp");

    // รับมุมมองเริ่มต้นเป็น GanttChartView
    GanttChartView gcView = (GanttChartView) project.getViews().toList().get(0);

    // แสดงข้อมูลระดับไทม์สเกลสูงสุด
    System.out.println("TopTimescaleTier Unit: " + getTimescaleUnitName(gcView.getTopTimescaleTier().getUnit()));
    System.out.println("TopTimescaleTier UsesFiscalYear: " + gcView.getTopTimescaleTier().getUsesFiscalYear() );
    System.out.println("TopTimescaleTier Alignment: " +  getAlignmentName(gcView.getTopTimescaleTier().getAlignment()));
    System.out.println("TopTimescaleTier ShowTicks: " + gcView.getTopTimescaleTier().getShowTicks());
    System.out.println("TopTimescaleTier Label" + getDateLabelName(gcView.getTopTimescaleTier().getLabel()));
}
TopTimescaleTier Unit: Quarters
TopTimescaleTier UsesFiscalYear: true
TopTimescaleTier Alignment: Center
TopTimescaleTier ShowTicks: true
TopTimescaleTier Label: QuarterQtrQYyyy

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวฟรี เพื่อทดลองใช้ห้องสมุดโดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ เราได้เรียนรู้วิธีการ

  • อ่านมุมมองแผนภูมิ Gantt โดยทางโปรแกรมใน Java;
  • แยกลักษณะแท่งและลักษณะข้อความของมุมมองแผนภูมิแกนต์
  • ดึงเส้นตารางและเส้นความคืบหน้าของมุมมองแผนภูมิ Gantt;
  • อ่านหน่วยสเกลเวลาของมุมมองแผนภูมิ Gantt โดยใช้ Java

นอกจากนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับ Aspose.Tasks for Java API โดยใช้ เอกสารประกอบ ในกรณีที่มีความคลุมเครือ โปรดติดต่อเราได้ที่ ฟอรัม

ดูสิ่งนี้ด้วย