WBS, EPS & Types
P6 Duration Types (Four) vs Project Task Types (Three)
P6 has four duration types; Project has three task types — not the same enum

What a planner means
P6 duration type decides which side of Duration ↔ Units ↔ Units/Time stays put when you change one of the others. Oracle: it applies only when at least one resource is assigned. Disabled on start/finish milestones.
Oracle equation (Professional): Duration = Units ÷ (Resource Units ÷ Time). Change one variable, P6 changes a second. Duration type picks which.
The four types (Oracle names)
| Type | Least flexible | Oracle use |
|---|---|---|
| Fixed Duration & Units/Time | Schedule (duration holds) | Finish in a fixed window regardless of resources. Task-dependent, typical. Remaining Units = Units/Time × Remaining Duration. |
| Fixed Duration & Units | Schedule and total work | Fixed window and fixed work. Units/Time = Remaining Units / Remaining Duration. Task-dependent, typical. |
| Fixed Units/Time | Resource rate | Crew productivity holds. Resource-dependent, typical. |
| Fixed Units | Total work / budget | Work holds; more people can shorten duration. Resource-dependent, typical. |
XER column: TASK.duration_type (Oracle label: Duration Type). Project default: PROJECT.def_duration_type. Stored codes are not listed in the Oracle XER column map. Integration API display strings are 'Fixed Units/Time', 'Fixed Duration and Units/Time', 'Fixed Units', 'Fixed Duration and Units'. Do not invent DT_* tokens until a live XER shows them.
Not the same as Project task type
Project has three types and a different equation: Work = Duration × Units.
| Project | MSPDI Type | Rough P6 cousin — not identity |
|---|---|---|
| Fixed Units (default) | 0 | Fixed Units/Time (rate holds) |
| Fixed Duration | 1 | one of the two Fixed Duration & … types |
| Fixed Work | 2 | Fixed Units (work holds) |
P6 splits “fixed duration” into two (hold units/time vs hold units). Project has no Units/Time type. Project effort-driven is a separate yes/no (always on for Fixed Work). P6 has no effort-driven checkbox; adding a resource is governed by duration type + activity type (task-dependent vs resource-dependent).
Do not map the three MSPDI integers onto duration_type as if they were the same enum. See task-types.md and effort-driven.md.