Properties for importing from Primavera
This article lists the project, task, and resource properties that Gantt supports when importing Primavera P6 files (XML and XER), along with format-specific limitations and properties that require special handling.
Project properties
The properties below are supported when importing project-level data from Primavera P6 files.
| AMText | CriticalSlackLimit | GUID | PreserveMinimumFloatWhenLeveling |
| ActivityIdIncrement | CurrencyDigits | HonorConstraints | PreserveScheduledEarlyAndLateDates |
| ActivityIdIncrementBasedOnSelectedActivity | CurrencySymbol | HyperlinkBase | ProjectCodeValues |
| ActivityIdPrefix | CurrentDate | IgnoreRelationshipsToAndFromOtherProjects | ProjectExternallyEdited |
| ActivityIdSuffix | CustomProperties | InsertedProjectsLikeSummary | ProjectID |
| ActualCost | DataDateAndPlannedStartSetToProjectForecastStart | LevelAllResources | ProjectIsBaseline |
| ActualDuration | DateFormat | LevelResourcesOnlyWithinActivityTotalFloat | ProjectTitle |
| ActualFinish | DateOrder | LevelingPriorities | ProjectWebsiteUrl |
| ActualStart | DateSeparator | LimitNumberOfFloatPathsToCalculate | RelationshipLagCalendar |
| ActualWork | DaysPerMonth | MakeOpenEndedActivitiesCritical | RemoveFileProperties |
| ActualsInSync | DecimalSeparator | MaxPercentToOverallocateResources | ScheduleFrom |
| AdminProject | DefaultCalendarUniqueID | MaximumNumberOfFloatPathsToCalculate | ScheduledFinish |
| AutoAddNewResourcesAndTasks | DefaultDurationIsFixed | MicrosoftProjectServerURL | SchedulingProgressedActivities |
| AutoFilter | DefaultDurationUnits | MinutesPerDay | ShowProjectSummaryTask |
| Autolink | DefaultEndTime | MinutesPerMonth | SplitInProgressTasks |
| BarTextDateFormat | DefaultFixedCostAccrual | MinutesPerWeek | SpreadActualCost |
| BaselineCalendarName | DefaultOvertimeRate | MinutesPerYear | SpreadPercentComplete |
| BaselineCost | DefaultStandardRate | MoveCompletedEndsBack | StartDate |
| BaselineDate | DefaultStartTime | MoveCompletedEndsForward | StartVariance |
| BaselineDuration | DefaultTaskEarnedValueMethod | MoveRemainingStartsBack | StatusDate |
| BaselineFinish | DefaultTaskType | MoveRemainingStartsForward | SymbolPosition |
| BaselineForEarnedValue | DefaultWorkUnits | MultipleCriticalPaths | ThousandsSeparator |
| BaselineProjectUniqueID | DisplayFloatPathsEndingWithActivityUniqueId | MustFinishBy | TimeFormat |
| BaselineWork | Duration | Name | TimeSeparator |
| CalculateFloatBasedOnFinishDateOfEachProject | EditableActualCosts | NewTaskStartIsProjectStart | TotalSlackCalculationType |
| CalculateMultipleFloatPaths | EditingTime | NewTasksAreManual | UniqueID |
| CalculateMultipleFloatPathsUsingTotalFloat | ExportFlag | NewTasksEffortDriven | UpdatingTaskStatusUpdatesResourceStatus |
| ComputeStartToStartLagFromEarlyStart | FileApplication | NewTasksEstimated | UseExpectedFinishDates |
| ConsiderAssignmentsInOtherProjects | FileType | Notes | WbsCodeSeparator |
| ConsiderAssignmentsInOtherProjectsWithPriorityEqualHigherThan | FinishDate | NotesObject | WeekStartDay |
| Cost | FinishVariance | PMText | Work |
| CreationDate | FiscalYearStart | PercentageComplete | Work2 |
| CriticalActivityType | FiscalYearStartMonth | PlannedStart |
Complex properties
Some properties contain nested properties of their own. When importing files with such properties, you get objects instead of plain values:
- CustomProperties - contains all the custom properties, as well as ProjectCodeValues.
- ProjectCodeValues - includes both codes and values prepared beforehand, as well as custom ones; it can also be used for grouping tasks and projects by categories. Examples of the built-in codes: Business Process, Business Segment, Capacity Analysis, Current Phase, Estimated Project Size, Financial Rating, IT Investment Class, Location, Priority, Product Line, Project Manager, Project Status, Project Type, Resource Rating, Risk Rating, Sponsor, Stage-Gate Gate, Stage-Gate Stage, Strategic Objective, Strategic Rating, Technology Rating.
Task properties
The properties below are supported when importing Activity tasks from Primavera P6 files.
| Active | ConstraintType | LongestPath | RemainingEarlyFinish |
| ActivityCodeValues | ConstraintName | Milestone | RemainingEarlyStart |
| ActivityID | Cost | Name | RemainingLateFinish |
| ActivityLevelingPriority | CostVariance | Notes | RemainingLateStart |
| ActivityPercentComplete | CreateDate | NotesObject | RemainingWork |
| ActivityStatus | Critical | OutlineLevel | RemainingWorkLabor |
| ActivityType | Duration | OutlineNumber | RemainingWorkNonLabor |
| ActualCost | DurationType | OverAllocated | ResponsePending |
| ActualDuration | DurationVariance | OvertimeCost | Resume |
| ActualFinish | EarlyFinish | PercentComplete | SecondaryConstraintDate |
| ActualStart | EarlyStart | PercentCompleteType | SecondaryConstraintType |
| ActualWork | EffectiveCalendar | PercentageComplete | SequenceNumber |
| ActualWorkLabor | Expanded | PercentageWorkComplete | Start |
| ActualWorkNonlabor | ExpectedFinish | PhysicalPercentComplete | StartSlack |
| Baseline | ExpenseItems | PlannedCost | StartVariance |
| BaselineCost | Finish | PlannedDuration | Steps |
| BaselineDuration | FinishSlack | PlannedFinish | Successors |
| BaselineFinish | FinishVariance | PlannedStart | Summary |
| BaselineFixedCost | FixedCost | PlannedWork | SuspendDate |
| BaselineStart | FloatPath | PlannedWorkLabor | TaskMode |
| BaselineWork | FloatPathOrder | PlannedWorkNonlabor | TotalSlack |
| CalendarUID | FreeSlack | Predecessors | Type |
| Calendar | GUID | PrimaryConstraint | UID |
| CalendarUniqueID | HasChildTasks | PrimaryResource | UniqueID |
| CanonicalActivityID | ID | PrimaryResourceUniqueID | UpdateNeeded |
| ChildTasks | IgnoreResourceCalendar | Priority | WBS |
| CompleteThrough | LateFinish | Recurring | Work |
| Confirmed | LateStart | RemainingCost | WorkVariance |
| ConstraintDate | LevelingPriority | RemainingDuration |
Format-specific properties
Different Primavera file formats support different sets of properties. A property available in one format isn't guaranteed to be available in another, since this is a limitation of the file format itself. For example, BaselineCost, BaselineDuration, BaselineFinish, BaselineFixedCost, BaselineStart, BaselineWork, CostVariance, and DurationVariance are used in the XML files, but absent in the XER files. Conversely, FloatPath, FloatPathOrder, FreeSlack, and LongestPath are used in the XER files, but absent in the XML files.
ConstraintName property
ConstraintName is a synthetic property - it doesn't exist in Primavera files. The property actually stored in files is ConstraintType. The export module accepts ConstraintType as either a number or a string, but on import it always returns a number, for backward compatibility. ConstraintName lets you import constraints using values that are understandable for humans instead: if it's set instead of ConstraintType, the export module recognizes it and applies the corresponding constraint type.
Complex properties
Some properties contain nested properties of their own. When importing files with such properties, you get objects instead of plain values:
-
ActivityCodeValues - includes both codes and values prepared beforehand, as well as custom ones.
-
Baseline - a baseline captures a snapshot of the whole project, not of a standalone task, meaning a task would need a full project with all its dates rather than just a baseline. Gantt doesn't support such a configuration yet. When importing Primavera files with baselines (used only in the XML files), Baseline contains all the available baselines.
-
ExpenseItems - a complex object with many properties, including two nested objects: Account and Category. Its full property list: Account, AccountUniqueID, AccrueType, ActualCost, ActualUnits, AtCompletionCost, AutoComputeActuals, Category, CategoryUniqueID, Description, DocumentNumber, Name, PlannedCost, PlannedUnits, PricePerUnit, RemainingCost, RemainingUnits, UniqueID, UnitOfMeasure, Vendor.
-
The Account object contains the following properties: ID, Name, Notes, NotesObject, Parent, ParentUniqueID, SequenceNumber, UniqueID.
-
The Category object contains the following properties: Name, SequenceNumber, UniqueID.
-
-
NotesObject - an array with note objects. Each object has the following properties: Notes, NotesTopic, TopicID, UniqueID.
-
Steps - represents the stages of a task's execution, an enumeration used later for calculations. It's an array of objects, each containing the following properties: Complete, Description, Name, PercentComplete, SequenceNumber, UniqueID, Weight.
WBS-tasks
Primavera P6 also has WBS-tasks (projects in Gantt, Summary Tasks in MS Project), with their own set of properties, separate from those of usual Activity tasks. Still, this is a Primavera behavior that Gantt supports: properties with matching names can be defined on both Activity tasks and WBS-tasks.
Resource properties
The properties below are supported when importing resources from Primavera P6 files.
| Active | CostRate | Name | ResourceID |
| ActualCost | CreationDate | Notes | RoleAssignments |
| ActualOvertimeCost | Currency | NotesObject | SequenceNumber |
| ActualOvertimeWork | CurrencyId | OverAllocated | Shift |
| ActualWork | DefaultUnits | OvertimeRate | ShiftUniqueId |
| Availability | EmailAddress | Parent | StandardRate |
| AvailableFrom | Enterprise | ParentResource | Start |
| AvailableTo | ExpensesOnly | ParentResourceUniqueID | TaskAssignments |
| CalculateCostsFromUnits | Finish | PercentWorkComplete | Type |
| Calendar | GUID | PrimaryRole | UniqueID |
| CalendarUniqueID | Generic | PrimaryRoleUniqueId | UnitOfMeasure |
| ChildResources | ID | RemainingCost | Work |
| Code | MaterialLabel | RemainingWork | |
| Cost | MaxUnits | ResourceCodeValues |
Complex properties
Some properties contain nested properties of their own. When importing files with such properties, you get objects instead of plain values:
- Availability - an array of objects with the following properties: Start, End, Units.
- CostRate - an object with the following properties: CostPerUse, StandardRate, OvertimeRate, StartDate, EndDate.
- Currency - an object representing the specified currency, with the following properties: UniqueID, CurrencyId, Name, Symbol, ExchangeRate, DecimalSymbol, NumberOfDecimalPlaces, DigitGroupingSymbol, PositiveCurrencyFormat, NegativeCurrencyFormat.
- ResourceCodeValues - includes both codes and values prepared beforehand, as well as custom ones. Examples of the built-in codes: PMO_Yes, Location, Contractor, Classification, Plant, PMO_Deps, Department.
- RoleAssignments - contains roles that represent personnel job titles or skills needed to execute projects. Gantt has no standalone array for roles, so all role data is stored in RoleAssignments on import; on export, the export module rebuilds roles from this same property. Its objects contain the following properties: Name, Proficiency, ResourceID, UniqueID, Notes, SequenceNumber.
- Shift - defines work hours spanning a period of time, applied to specific resources. On import, you get an object with the following properties: Name, UniqueID, Periods.
- The Periods array includes objects that contain the following properties: Duration, Start, UniqueID.
- TaskAssignments - an array of objects representing the assigned tasks, each containing the following properties: task_id, start_date, end_date, uid, units.
Related sample: Gantt. Import and export Primavera P6 files with additional project, task and resource properties and entities