com.aspose.tasks

Interfaces

Classes

Exceptions

com.aspose.tasks

Class Project



  • public class Project
    extends Object

    Represents a project.

    • Constructor Detail

      • Project

        public Project()

        Initializes a new instance of the Project class.

      • Project

        public Project(String projectTemplate,
                       String protectionPassword)

        Initializes a new instance of the Project class from a password protected template (existent mpp or mpt file).

        Parameters:
        projectTemplate - Path to template to create project from.
        protectionPassword - Protection password.


        Reading password protected files currently supported for MSP 2003 file format only.

      • Project

        public Project(String projectTemplate)

        Initializes a new instance of the Project class from a template (existent mpp or mpt file).

        Parameters:
        projectTemplate - Path to template to create project from.
      • Project

        public Project(String projectTemplate,
                       ParseErrorCallback parseErrorHandler)

        Initializes a new instance of the Project class from a template (existent mpp or mpt file).

        Parameters:
        projectTemplate - Path to template to create project from.
        parseErrorHandler - the specified callback method to handle xml parse errors.
      • Project

        public Project(InputStream stream)

        Initializes a new instance of the Project class from a template(existent mpp or mpt file).

        Parameters:
        stream - InputStream to load a template from.
      • Project

        public Project(DbSettings settings)

        Initializes a new instance of the Project class to read data from a database which is specified by the instance of the DbSettings class.

        Parameters:
        settings - the specified instance of the DbSettings class.
      • Project

        public Project(InputStream stream,
                       ParseErrorCallback parseErrorHandler)

        Initializes a new instance of the Project class from a template(existent mpp or mpt file).

        Parameters:
        stream - InputStream to load a template from.
        parseErrorHandler - the specified callback method to handle xml parse errors.
      • Project

        public Project(InputStream stream,
                       String protectionPassword)

        Initializes a new instance of the Project class from a template(existent mpp or mpt file).

        Parameters:
        stream - InputStream to load a template from.
        protectionPassword - Protection password.


        Reading password protected files currently supported for MSP 2003 file format only.

      • Project

        public Project(String projectTemplate,
                       LoadOptions options)

        Initializes a new instance of the Project class from a template (existent mpp or mpt file) with the specified instance of the LoadOptions class.

        Parameters:
        projectTemplate - Path to template to create project from
        options - the specified instance of the LoadOptions class.
    • Method Detail

      • calcResourceFields

        @Deprecated
        public final void calcResourceFields()
        Deprecated. This method is obsolete and will be removed in future releases. Use the RecalculateResourceFields method instead.

        Recalculates Id, Start and Finish of resources.

      • calcResourceStartFinish

        @Deprecated
        public final void calcResourceStartFinish()
        Deprecated. This method is obsolete and will be removed in future releases. Use the RecalculateResourceStartFinish method instead.

        Recalculates Start and Finish of resources.

      • copyTo

        public final void copyTo(Project another)

        Copies project's main data and properties to another project.

        Parameters:
        another - Another project to copy data to.
      • get

        public final <T> T get(Key<T,Integer> key)

        Returns the value to which the property is mapped in this container.

        Parameters:
        key - the specified property key. Prj for getting the property key.

        T: the type of the mapped value.

        Returns:
        the value to which the property is mapped in this container.
      • getBaselineSaveTime

        public final Date getBaselineSaveTime(int baselineNumber)

        Returns the baseline save time. Returns DateTime.MinValue if the baseline was not saved.

        Parameters:
        baselineNumber - The baseline's number BaselineType.
        Returns:
        The baseline's last save date and time.
      • getCalculationMode

        public final int getCalculationMode()

        Gets calculation mode of a project. Can be one of the values of CalculationMode(getCalculationMode()/setCalculationMode(int)) enumeration.

        Returns:
        calculation mode of a project.
      • setCalculationMode

        public final void setCalculationMode(int value)

        Sets calculation mode of a project. Can be one of the values of CalculationMode(getCalculationMode()/setCalculationMode(int)) enumeration.

        Parameters:
        value - calculation mode of a project.
      • getCriticalPath

        public final TaskCollection getCriticalPath()

        Gets TaskCollection which contains a list of Critical tasks which comprise Critical Path of this project.

        Returns:
        TaskCollection which represents a list of all critical tasks.


        this is an O(n) operation, where n is the number of tasks in the project.

      • getCustomProperties

        public final Map<String,Object> getCustomProperties()

        Gets project's custom properties hashtable. Read/write Map.

        Returns:
        project's custom properties hashtable.
      • setCustomProperties

        public final void setCustomProperties(Map<String,Object> value)

        Sets project's custom properties map. Read/write Map<String,Object>.

        Parameters:
        value - custom properties hashmap of the project.
      • getDefaultView

        public final View getDefaultView()

        Gets default view of the project.

        Returns:
        default view of the project.
      • getDefaultWeekWorkingDays

        public final WeekDayCollection getDefaultWeekWorkingDays()

        Gets the instance of WeekDayCollection class which represents a collection of project default week working days and working times.

        Returns:
        The instance of WeekDayCollection class which contains a list of WeekDay objects.


        The data contains only in mpp files (not in xml).

      • getDuration

        public final Duration getDuration(double val)

        Gets Duration object with the specified double value and default duration format.

        Parameters:
        val - specified value.
        Returns:
        Duration object.
      • getDuration

        public final Duration getDuration(double val,
                                          int timeUnit)

        Gets Duration object with the specified double value and specified TimeUnitType value.

        Parameters:
        val - specified double value.
        timeUnit - specified TimeUnitType value.
        Returns:
        Duration object.
      • getOleObjects

        public final OleObjectCollection getOleObjects()

        Gets a collection containing the instances of the OleObject class which are linked or embedded to this project file.


        Available for mpp file format only.

        Returns:
        a collection containing the instances of the OleObject class which are linked or embedded to this project file.
      • getOutlineCodes

        public final OutlineCodeDefinitionCollection getOutlineCodes()

        Gets OutlineCodeDefinitionCollection object. The collection of outline code definitions associated with a project.

        Returns:
        OutlineCodeDefinitionCollection object.
      • getPageCount

        public final int getPageCount()

        Returns page count for the project to be rendered using default Timescale(Days).

        Returns:
        Page count to be rendered.
      • getPageCount_PresentationFormat

        public final int getPageCount_PresentationFormat(int format)

        Returns page count for the project to be rendered using default Timescale(Days) and given PresentationFormat

        Parameters:
        format - PresentationFormat to get page count for.
        Returns:
        Page count to be rendered.
      • getPageCount_PageSize

        public final int getPageCount_PageSize(int pageSize,
                                               int scale,
                                               Date startDate,
                                               Date endDate)

        Returns page count for the project to be rendered using given Timescale, PresentationFormat and date range.

        Parameters:
        pageSize - PageSize to get page count for.
        scale - Timescale to get page count for.
        startDate - Start date to get page count for.
        endDate - End date to get page count for.
        Returns:
        Page count to be rendered.
      • getPageCount_PageSize

        public final int getPageCount_PageSize(int pageSize,
                                               int scale)

        Returns page count for the project to be rendered using given Timescale and PageSize.

        Parameters:
        pageSize - PageSize to get page count for.
        scale - Timescale to get page count for.
        Returns:
        Page count to be rendered.
      • getPageCount_Timescale

        public final int getPageCount_Timescale(int scale)

        Returns page count for the project to be rendered using given Timescale.

        Parameters:
        scale - Timescale to get page count for.
        Returns:
        Page count to be rendered.
      • getPageCount

        public final int getPageCount(int format,
                                      int scale)

        Returns page count for the project to be rendered using given Timescale and PresentationFormat.

        Parameters:
        format - PresentationFormat to get page count for.
        scale - Timescale to get page count for.
        Returns:
        Page count to be rendered.
      • getPredecessors

        public final TaskLinkCollection getPredecessors(Task task)

        Returns a collection of task links which are predecessors of the specified task.

        Parameters:
        task - The task to get predecessors for.
        Returns:
        List of predecessors TaskLink.
      • getProjectFileInfo

        public static ProjectFileInfo getProjectFileInfo(String filename)

        Read project file info from the file.

        Parameters:
        filename - The project filename.
        Returns:
        The project file info ProjectFileInfo.
      • getProjectFileInfo

        public static ProjectFileInfo getProjectFileInfo(InputStream stream)

        Gets project file info from the stream.

        Parameters:
        stream - The data stream.
        Returns:
        The project file info ProjectFileInfo.
      • getResourceAssignments

        public final ResourceAssignmentCollection getResourceAssignments()

        Gets ResourceAssignmentCollection object.

        Returns:
        ResourceAssignmentCollection object.
      • getResourceFilters

        public final FilterCollection getResourceFilters()

        Gets all the resource-based filter definitions. ResourceFilters is a collection of Filter objects.

        Returns:
        all the resource-based filter definitions.
      • getResourceGroups

        public final GroupCollection getResourceGroups()

        Gets all of the resource-based group definitions. ResourceGroups is a collection of Group objects.

        Returns:
        all of the resource-based group definitions.
      • getResources

        public final ResourceCollection getResources()

        Gets ResourceCollection object.

        Returns:
        ResourceCollection object.
      • getRootTask

        public final Task getRootTask()

        Gets the root of the tree of tasks.

        Returns:
        the root of the tree of tasks.
      • getTaskFilters

        public final FilterCollection getTaskFilters()

        Gets all the task-based filter definitions. TaskFilters is a collection of Filter objects.

        Returns:
        all the task-based filter definitions.
      • getTaskGroups

        public final GroupCollection getTaskGroups()

        Gets all the task-based group definitions. TaskGroups is a collection of Group objects.

        Returns:
        all the task-based group definitions.
      • getVbaProject

        public final VbaProject getVbaProject()

        Gets an instance of VbaProject class.

        Returns:
        an instance of VbaProject class.
      • getViews

        public final ViewCollection getViews()

        Gets a list of View objects.

        Returns:
        a list of View objects.
      • getWBSCodeDefinition

        public final WBSCodeDefinition getWBSCodeDefinition()

        Gets WBS Code Definition for the project.

        Returns:
        WBS Code Definition for the project.
      • setWBSCodeDefinition

        public final void setWBSCodeDefinition(WBSCodeDefinition value)

        Sets WBS Code Definition for the project.

        Parameters:
        value - WBS Code Definition for the project.
      • getWork

        public final Duration getWork(double val)

        Gets Duration object with the specified double value and default work format.

        Parameters:
        val - specified double value.
        Returns:
        Duration object.
      • recalculate

        public final void recalculate()

        Reschedules all project tasks ids, outline levels, start/finish dates, sets early/late dates, calculates slacks, work and cost fields.

      • recalculate

        public final void recalculate(boolean validate)

        Reschedules all project tasks ids, outline levels, start/finish dates, sets early/late dates, calculates slacks, work and cost fields with optional validation.

        Parameters:
        validate - If true the validation of recalculation will be performed. What data is validated: At the moment only basic validation of task and task link date ranges is implemented. Task's date ranges (e.g. ActualStart - ActualFinish, EarlyStart - EarlyFinish, etc.) as well as Task Links dates will be checked against the date criteria that start date is less or equal than finish date. If any of conditions described above is failed then RecalculationValidationException will be thrown.
      • recalculateResourceFields

        public final void recalculateResourceFields()

        Recalculates Id, Start and Finish of resources.

      • recalculateResourceStartFinish

        public final void recalculateResourceStartFinish()

        Recalculates Start and Finish of resources.

      • removeInvalidResourceAssignments

        public final void removeInvalidResourceAssignments()

        Eliminates invalid resource assignments from the project resource assignments list.


        MS Project creates an empty resource assignment for each task. Call the method to remove them.

      • renumberWBSCode

        public final void renumberWBSCode()

        Renumber WBS code of all tasks.

      • renumberWBSCode

        public final void renumberWBSCode(List<Integer> taskIds)

        Renumber WBS code of passed tasks.

        Parameters:
        taskIds - Task identifiers to renumber WBS codes.
      • rescheduleUncompletedWorkToStartAfter

        public final void rescheduleUncompletedWorkToStartAfter(Date after)

        Reschedules uncompleted project work to start after a specified date.

        Parameters:
        after - Date to reschedule uncompleted work after.


        Ensure that Project.CanSplitsInProgressTasks flag is set to true before using this method.

      • rescheduleUncompletedWorkToStartAfter

        public final void rescheduleUncompletedWorkToStartAfter(Date after,
                                                                List<Task> tasks)

        Reschedules uncompleted work for a specified list of tasks to start after a specified date.

        Parameters:
        after - Date to reschedule uncompleted work after.
        tasks - List<Task> of tasks to reschedule uncompleted work for.


        Ensure that Project.CanSplitsInProgressTasks flag is set to true before using this method.

      • save

        public final void save(String filename,
                               int format)
                        throws IOException

        Saves the project data to the file.

        Parameters:
        filename - The file name.
        format - SaveFileFormat save file format.
        Throws:
        IOException
      • saveAsTemplate

        public final void saveAsTemplate(String fileName)
                                  throws IOException

        Saves the project as a template to the specified file path.

        Parameters:
        fileName - the specified file name.
        Throws:
        IOException
      • saveAsTemplate

        public final void saveAsTemplate(OutputStream stream)
                                  throws IOException

        Saves the project as a template to a specified stream.

        Parameters:
        stream - the specified stream to save the project to.
        Throws:
        IOException
      • saveReport

        public final void saveReport(OutputStream stream)
                              throws IOException

        Saves the project overview report to the stream.

        Parameters:
        stream - The stream to save project report to.
        Throws:
        IOException
      • saveReport

        public final void saveReport(String fileName)

        Saves the project overview report to pdf file.

        Parameters:
        fileName - The file name.
      • saveReport

        public void saveReport(OutputStream stream,
                               int reportType)
                        throws IOException

        Saves the project report of the specified type to the specified stream.

        Parameters:
        stream - the specified stream to save project report to.
        reportType - the specified report type.ReportType
        Throws:
        IOException
      • saveReport

        public final void saveReport(String fileName,
                                     int reportType)

        Saves the project report of the specified type in pdf format to the specified file path.

        Parameters:
        fileName - the specified file name.
        reportType - the specified report type.ReportType
      • selectAllChildTasks

        public final List<Task> selectAllChildTasks()

        Recursively collects all child tasks of the root task.

        Returns:
        The collection of tasks.
      • set

        public final <T> void set(Key<T,Integer> key,
                                  T val)

        Maps the specified property to the specified value in this container.

        Parameters:
        key - the specified property key. Prj for getting the property key.
        val - the value.

        T: the type of the mapped value.

      • set

        public final void set(Key<Date,Integer> key,
                              Date val)

        Maps the specified property to the specified value in this container.

        Parameters:
        key - the specified property key. Prj for getting the property key.
        val - the value.
      • setBaseline

        public final void setBaseline(int baselineType)

        Saves baseline fields to the specified baseline for the entire project.

        Parameters:
        baselineType - BaselineType to save baseline data to.
      • setBaseline

        public final void setBaseline(int baselineType,
                                      Iterable<Task> tasks)

        Saves baseline fields to the specified baseline for the selected tasks.

        Parameters:
        baselineType - BaselineType to save baseline data to.
        tasks - List of tasks to save baseline data for.
      • updateProjectWorkAsComplete

        public final void updateProjectWorkAsComplete(Date completeThrough,
                                                      boolean setZeroOrHundredPercentCompleteOnly)

        Updates all work as complete through a specified date for the entire project.

        Parameters:
        completeThrough - Date to update work as completed through.
        setZeroOrHundredPercentCompleteOnly - If set to true updates only those tasks as 100% complete whose finish date is before specified complete-through date. Otherwise, calculates a percentage complete value based on scheduled start and complete-through dates.
      • updateProjectWorkAsComplete

        public final void updateProjectWorkAsComplete(Date completeThrough,
                                                      boolean setZeroOrHundredPercentCompleteOnly,
                                                      List<Task> tasks)

        Updates all work as complete through a specified date for the specified list of tasks.

        Parameters:
        completeThrough - Date to update work as completed through.
        setZeroOrHundredPercentCompleteOnly - If set to true updates only those tasks as 100% complete whose finish date is before specified complete-through date. Otherwise, calculates a percentage complete value based on scheduled start and complete-through dates.
        tasks - List<Task> of tasks to update work for.