2012-03-26 4 views
0

ms 프로젝트 또는 2003 프로젝트에서 작동하도록 mpxj 및 outlince 코드를 얻은 사람이 있습니까? xml 파일에 mpxj로 아웃 라인 코드를 작성하고 ms 프로젝트로 임포트하십시오. 2003/2007

는 다음 코드와 개요 코드를 내보내려고 :

ProjectFile project = new ProjectFile(); 
Task task = project.addTask(); 
task.setOutlineCode1("outlineCode1"); 

결과 XML이 같은보고 :

<Project xmlns="http://schemas.microsoft.com/project"> 
.. 
<ExtendedAttributes> 
    <ExtendedAttribute> 
     <FieldID>188744096</FieldID> 
     <FieldName>Outline Code1</FieldName> 
    </ExtendedAttribute> 
</ExtendedAttributes> 
.. 
<Tasks> 
    <Task> 
     .. 
     <ExtendedAttribute> 
      <FieldID>188744096</FieldID> 
      <Value>value</Value> 
     </ExtendedAttribute> 
     .. 
    </Task> 
</Tasks> 
</Project> 

을하지만 난이 가져온 프로젝트의 모든 개요 코드를 찾을 수 없습니다.

프로젝트에 개요 코드를 수동으로 추가하면 결과 XML 파일도 위와 다릅니다.

<Project xmlns="http://schemas.microsoft.com/project"> 
.. 
<OutlineCodes> 
    <OutlineCode> 
    <FieldID>188744096</FieldID> 
    <FieldName>Outline Code1</FieldName> 
     <Values> 
      <Value> 
       <ValueID>1</ValueID> 
       <ParentValueID>0</ParentValueID> 
       <Value>value</Value> 
      </Value> 
      .. 
     </Values> 
     .. 
</OutlineCode> 
</OutlineCodes> 
.. 
<ExtendedAttributes> 
    <ExtendedAttribute> 
     <FieldID>188744096</FieldID> 
     <FieldName>Outline Code1</FieldName> 
    </ExtendedAttribute> 
</ExtendedAttributes> 
.. 
<Tasks> 
    <Task> 
     .. 
     <OutlineCode> 
      <UID>1</UID> 
      <FieldID>188744096</FieldID> 
      <ValueID>1</ValueID> 
     </OutlineCode> 
     .. 
    </Task> 
</Tasks> 
</Project> 

그래서 수출 절차에 몇 가지 중요한 단계가 누락되었습니다.

답변

1

나는 MPXJ의 출처를 살펴본 후 내 자신의 빠른 테스트를 수행했으며, 잘못된 것을하는 것처럼 보이지 않는다. 지금까지 내가 말할 수있는대로 MS 프로젝트가 필요로하는 방식으로 OutlineCodes를 지원하지 않습니다.

발견 한대로 보통 ExtendedAttributes으로 출력하지만 MSPDI 스키마는 OutlineCode 요소 집합을 정의합니다 (MS Project에서 만든 xml에서 볼 수있는 것처럼). 사실 OutlineCode 요소는 값을 직접 저장하는 대신 프로젝트에 정의 된 조회 값에 대한 참조를 저장합니다.

가장 좋은 방법은 log a bug over on SourceForge이며, Jon (제작자)이 보게하십시오.