Ajuda com MPXJ

3 respostas
R

E ai pessoal, blz?
Bom galera é o seguinte:

  • Tenho que usar uma API chamada MPXJ para fazer a leitura e a gravação de arquivos do MSProject.

O problema é o seguinte:

  • Já vasculhei o google atras de algum tutorial ou algum exemplo, e nada!!!

Será que alguem sabe como usar essa API(algum código de exemplo)?

Valeu…

3 Respostas

R

Bom galera eu não aprendi muita coisa não sobre essa API.
Porém consegui resolver o meu problema.
Eu peguei o arquivo do MSProject e converti ele para XML, ai sim eu consegui fazer a leitura do conteudo desse arquivo, usando o MPXJ somente para converter para XML.
Segue abaixo o codigo:

public String convert(String fileInPut){
		String fileOutPut = "C:/Teste/Project2Project.xml";
		String auxiliar = null;
		 try		 	 
	     {
			System.out.println(fileInPut);
			ProjectReader projectReader = ProjectReaderUtility.getProjectReader(fileInPut);
			ProjectFile file = projectReader.read(fileInPut);
	
			ProjectWriter projectWriter = ProjectWriterUtility.getProjectWriter(fileOutPut);
			projectWriter.write(file, fileOutPut);
	      }
	      catch (Exception ex) {
	    	 ex.printStackTrace(System.out);
	    	 auxiliar = ERROR; 
	         return auxiliar;
	      }
		return fileOutPut;
	}
L

Gostei deste mpxj!

Veja abaixo um exemplo de leitura das tarefas de um arquivo mpp.
Isto pode ser um início para entender a utilização.
Alguém já fez a leitura do calendário?
Necessito converter a previsão das tarefas de dias para horas.

import java.io.File;
import java.util.List;
import net.sf.mpxj.ProjectFile;
import net.sf.mpxj.Task;
import net.sf.mpxj.mpp.MPPReader;

/**
 * This example shows an MPP, MPX or MSPDI file being read, and basic
 * task and resource data being extracted.
 */
public class ImportProject
{
   /**
    * Main method.
    *
    * @param args array of command line arguments
    */
   public static void main (String[] args)
   {
      try
      {
        File file = new File("c:/temp/testProject.mpp");
        MPPReader mppRead = new MPPReader();
        System.out.println("mpp reader : "+ mppRead.toString());
        ProjectFile pf = mppRead.read(file);
        /*
        The above statement can also be write as
        ProjectFile pf = mppRead.read("path of the mpp file");
        */
        System.out.println("proj file : "+ pf.getMppFileType());

        List lstTask = pf.getAllTasks();
        Task task;

        System.out.println("tasks count:: "+ lstTask.size());
        for(int i=1;i<lstTask.size();i++){
          task = (Task) lstTask.get(i);
          System.out.println("tasks: "+ task.getName() + " / "+ task.getWBS() + " / " + task.getUniqueID() + " / "+ task.getID() + " / "+task.getStart() + " / " + task.getDuration());
        }

      }

      catch (Exception ex)
      {
         ex.printStackTrace(System.out);
      }
   }
A

eu estou precisando fazer a exportação da base para um arquivo do ms project. Alguem aqui ja fez isso??

vlw!

Criado 18 de agosto de 2008
Ultima resposta 30 de set. de 2009
Respostas 3
Participantes 3