Package net.sf.mpxj

Examples of net.sf.mpxj.ProjectFile


    * @throws Exception on file read error
    */
   private static void query(String filename) throws Exception
   {
      ProjectReader reader = ProjectReaderUtility.getProjectReader(filename);
      ProjectFile mpx = reader.read(filename);

      System.out.println("MPP file type: " + mpx.getMppFileType());

      listProjectHeader(mpx);

      listResources(mpx);

View Full Code Here


    * @param value task UID
    * @return task UID string
    */
   public static final String printTaskUID(Integer value)
   {
      ProjectFile file = PARENT_FILE.get();
      if (file != null)
      {
         file.fireTaskWrittenEvent(file.getTaskByUniqueID(value));
      }
      return (value.toString());
   }
View Full Code Here

    * @param value resource UID value
    * @return resource UID string
    */
   public static final String printResourceUID(Integer value)
   {
      ProjectFile file = PARENT_FILE.get();
      if (file != null)
      {
         file.fireResourceWrittenEvent(file.getResourceByUniqueID(value));
      }
      return (value.toString());
   }
View Full Code Here

    */
   public ProjectFile read(InputStream stream) throws MPXJException
   {
      try
      {
         m_projectFile = new ProjectFile();

         m_projectFile.addProjectListeners(m_projectListeners);
         m_projectFile.setAutoTaskID(false);
         m_projectFile.setAutoTaskUniqueID(false);
         m_projectFile.setAutoResourceID(false);
View Full Code Here

    }
    public ModifiedMSPDIWriter serializeProject(Project project,boolean globalIdsOnly) throws Exception{
        if (globalIdsOnly)
          makeGLobal(project);
        ModifiedMSPDIWriter projectData=new ModifiedMSPDIWriter();
        ProjectFile projectFile = new ProjectFile();
        projectData.setProjectFile(projectFile);
       
        projectData.setProjityProject(project);
//this doesn't appear in 2007 version of mpxj        projectData.setMicrosoftProjectCompatibleOutput(true);
        projectFile.setAutoTaskUniqueID(true);
        projectFile.setAutoResourceUniqueID(true);
        //project
        ProjectHeader projectHeader=projectFile.getProjectHeader();
       
    MPXConverter.toMPXOptions(projectHeader);

        MPXConverter.toMPXProject(project,projectHeader);
        if (job!=null) job.setProgress(0.2f);
       
        //calendars
//        WorkCalendar calendar=project.getWorkCalendar();
//        if (calendar!=null){
//            ProjectCalendar calendarData=projectData.addDefaultBaseCalendar();
//            calendarData.setName(calendar.getName());
//        }
        projectFile.setAutoCalendarUniqueID(true);
    CalendarService service = CalendarService.getInstance();
    Object[] calendars=CalendarService.allBaseCalendars();
    if (calendars!=null)
    for (int i=0;i<calendars.length;i++){
      WorkingCalendar workCalendar=(WorkingCalendar)calendars[i];
      ProjectCalendar cal = projectFile.addBaseCalendar();
      MPXConverter.toMpxCalendar(workCalendar,cal);
      ImportedCalendarService.getInstance().addExportedCalendar(cal,workCalendar);
    }
        if (job!=null) job.setProgress(0.3f);
       
View Full Code Here

    * @param filtername input filter name
    */
   private static void filter(String filename, String filtername) throws Exception
   {
      ProjectReader reader = ProjectReaderUtility.getProjectReader(filename);
      ProjectFile project = reader.read(filename);
      Filter filter = project.getFilterByName(filtername);

      if (filter == null)
      {
         displayAvailableFilters(project);
      }
View Full Code Here

      MPD9DatabaseReader reader = new MPD9DatabaseReader();
      reader.setProjectID(m_projectID);
      reader.setPreserveNoteFormatting(m_preserveNoteFormatting);
      reader.setDataSource(m_dataSource);
      reader.setConnection(m_connection);
      ProjectFile project = reader.read();
      return (project);
   }
View Full Code Here

      //
      // Create an empty MPX or MSPDI file. The filename is passed to
      // this method purely to allow it to determine the type of
      // file to create.
      //
      ProjectFile file = new ProjectFile();

      //
      // Uncomment these lines to test the use of alternative
      // delimiters and separators for MPX file output.
      //
      //file.setDelimiter(';');
      //file.setDecimalSeparator(',');
      //file.setThousandsSeparator('.');

      //
      // Add a default calendar called "Standard"
      //
      ProjectCalendar calendar = file.addDefaultBaseCalendar();

      //
      // Add a holiday to the calendar to demonstrate calendar exceptions
      //
      calendar.addCalendarException(df.parse("13/03/2006"), df.parse("13/03/2006"));

      //
      // Retrieve the project header and set the start date. Note Microsoft
      // Project appears to reset all task dates relative to this date, so this
      // date must match the start date of the earliest task for you to see
      // the expected results. If this value is not set, it will default to
      // today's date.
      //
      ProjectHeader header = file.getProjectHeader();
      header.setStartDate(df.parse("01/01/2003"));

      //
      // Add resources
      //
      Resource resource1 = file.addResource();
      resource1.setName("Resource1");

      Resource resource2 = file.addResource();
      resource2.setName("Resource2");

      //
      // This next line is not required, it is here simply to test the
      // output file format when alternative separators and delimiters
      // are used.
      //
      resource2.setMaxUnits(Double.valueOf(50.0));

      //
      // Create a summary task
      //
      Task task1 = file.addTask();
      task1.setName("Summary Task");

      //
      // Create the first sub task
      //
      Task task2 = task1.addTask();
      task2.setName("First Sub Task");
      task2.setDuration(Duration.getInstance(10.5, TimeUnit.DAYS));
      task2.setStart(df.parse("01/01/2003"));

      //
      // We'll set this task up as being 50% complete. If we have no resource
      // assignments for this task, this is enough information for MS Project.
      // If we do have resource assignments, the assignment record needs to
      // contain the corresponding work and actual work fields set to the
      // correct values in order for MS project to mark the task as complete
      // or partially complete.
      //
      task2.setPercentageComplete(NumberUtility.getDouble(50.0));
      task2.setActualStart(df.parse("01/01/2003"));

      //
      // Create the second sub task
      //
      Task task3 = task1.addTask();
      task3.setName("Second Sub Task");
      task3.setStart(df.parse("11/01/2003"));
      task3.setDuration(Duration.getInstance(10, TimeUnit.DAYS));

      //
      // Link these two tasks
      //
      task3.addPredecessor(task2, RelationType.FINISH_START, null);

      //
      // Add a milestone
      //
      Task milestone1 = task1.addTask();
      milestone1.setName("Milestone");
      milestone1.setStart(df.parse("21/01/2003"));
      milestone1.setDuration(Duration.getInstance(0, TimeUnit.DAYS));
      milestone1.addPredecessor(task3, RelationType.FINISH_START, null);

      //
      // This final task has a percent complete value, but no
      // resource assignments. This is an interesting case it it requires
      // special processing to generate the MSPDI file correctly.
      //
      Task task4 = file.addTask();
      task4.setName("Next Task");
      task4.setDuration(Duration.getInstance(8, TimeUnit.DAYS));
      task4.setStart(df.parse("01/01/2003"));
      task4.setPercentageComplete(NumberUtility.getDouble(70.0));
      task4.setActualStart(df.parse("01/01/2003"));

      //
      // Assign resources to tasks
      //
      ResourceAssignment assignment1 = task2.addResourceAssignment(resource1);
      ResourceAssignment assignment2 = task3.addResourceAssignment(resource2);

      //
      // As the first task is partially complete, and we are adding
      // a resource assignment, we must set the work and actual work
      // fields in the assignment to appropriate values, or MS Project
      // won't recognise the task as being complete or partially complete
      //
      assignment1.setWork(Duration.getInstance(80, TimeUnit.HOURS));
      assignment1.setActualWork(Duration.getInstance(40, TimeUnit.HOURS));

      //
      // If we were just generating an MPX file, we would already have enough
      // attributes set to create the file correctly. If we want to generate
      // an MSPDI file, we must also set the assignment start dates and
      // the remaining work attribute. The assignment start dates will normally
      // be the same as the task start dates.
      //
      assignment1.setRemainingWork(Duration.getInstance(40, TimeUnit.HOURS));
      assignment2.setRemainingWork(Duration.getInstance(80, TimeUnit.HOURS));
      assignment1.setStart(df.parse("01/01/2003"));
      assignment2.setStart(df.parse("11/01/2003"));

      //
      // Write a 100% complete task
      //
      Task task5 = file.addTask();
      task5.setName("Last Task");
      task5.setDuration(Duration.getInstance(3, TimeUnit.DAYS));
      task5.setStart(df.parse("01/01/2003"));
      task5.setPercentageComplete(NumberUtility.getDouble(100.0));
      task5.setActualStart(df.parse("01/01/2003"));
View Full Code Here

      Class.forName(driverClass);
      Connection c = DriverManager.getConnection(connectionString);
      PrimaveraDatabaseReader reader = new PrimaveraDatabaseReader();
      reader.setConnection(c);
      reader.setProjectID(Integer.valueOf(projectID).intValue());
      ProjectFile projectFile = reader.read();
      long elapsed = System.currentTimeMillis() - start;
      System.out.println("Reading database completed in " + elapsed + "ms.");

      System.out.println("Writing output file started.");
      start = System.currentTimeMillis();
View Full Code Here

    */
   public ProjectFile read() throws MPXJException
   {
      try
      {
         m_project = new ProjectFile();

         m_project.addProjectListeners(m_projectListeners);
         m_project.setAutoTaskID(false);
         m_project.setAutoTaskUniqueID(false);
         m_project.setAutoResourceID(false);
View Full Code Here

TOP

Related Classes of net.sf.mpxj.ProjectFile

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.