2012-11-15 3 views
1

MPXJ - Java를 사용하여 MS Project 2010 .mpp 파일에서 기본 작업 및 리소스 정보를 추출하려고합니다. 파일을 열고 모든 작업을 덤프하는 데 문제가 없지만 작업에 할당 된 리소스에 액세스하려고 할 때 문제가 발생합니다. Task.GetResourceNames()를 호출 할 때마다 null이 반환됩니다. Task.GetResourceAssignments()를 호출 해 보았습니다.하지만 매번 null이 반환됩니다.GetResourceNames는 MPXJ 작업 메서드에 대해 null을 반환합니다.

하나의 요약 작업, 세 개의 하위 작업, 함께 링크 된 매우 간단한 프로젝트를 만들었으며 각각의 작업에 다른 리소스가 할당되었습니다.

프로그램을 실행할 때 모든 작업을 볼 수 있지만 GetResourceNames() 호출은 여전히 ​​null을 반환합니다.

잘못된 인터페이스를 통해이 문제가 발생합니까?

답변

0

javadoc에서 mpp 파일의 GetResourceNames()가 항상 null을 반환하는 것을 볼 수 있습니다. 가 특정 작업에서 자원 이름을 얻으려면, 이것은 내가 한 방법입니다이 도움이

  List<ResourceAssignment> Resources = task.getResourceAssignments(); 
// getResourceAssignments() return a list of ResourceAssignment of a specific task. 
      Iterator i = Resources.iterator(); 

      while (i.hasNext()) { 
       ResourceAssignment ra = (ResourceAssignment) i.next(); 
       Resource r = ra.getResource(); 
// we get the resource from the resource assignment 
       System.out.println("\t Assigned Resources : " + r.getName()); 
// print the name of the Resource. If you want to do the same than GetResourceNames, just add each name in a String and you will have the same results at the end. 
      } 

희망.