MTPPJ: MTP Project
Project-in-plan join. Links a PJ to an MTP, captures the scoring snapshot (iniScore, nwplatScore, benefitScore, compositeScore), the decision (Proposed / Selected / Deferred / Rejected), and the years within the plan horizon the project is expected to run. Owns MTPLINE cost lines.
Default definition. This article describes the default
MTPPJ definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches MTPPJ.Entity properties
| Property | Value |
|---|---|
| Entity code | MTPPJ |
| Display name | MTP Project |
| Plural | MTP Projects |
| Level | 461 |
Use cases
Scoring fields are stamped at scoring time (scoredAt) so last cycle's rationale is auditable. rankLocked preserves a manually-set rank through rescoring. decision drives whether this project is included in ROADLINE generation on plan approval.
Fields
Project in Plan
| Field | Type | Required | Notes |
|---|---|---|---|
pjId | reference → PJ | Yes | Project |
included | boolean | Unchecking removes from prioritisation without deleting the record | |
rankLocked | boolean | Preserves manual rank through rescoring | |
startYear | number | Start Year | |
endYear | number | End Year | |
totalValue | number | Sum of all MTP cost lines across the plan horizon. Recalculated automatically when lines change. Read only. |
Decision
| Field | Type | Required | Notes |
|---|---|---|---|
decision | enum | Decision Valid ids: proposed (Proposed), selected (Selected), deferred (Deferred), rejected (Rejected). | |
decisionNote | text (multi-line) | Decision note |
Assessment
| Field | Type | Required | Notes |
|---|---|---|---|
successProbability | number | Likelihood this project succeeds if funded. User-assessed per plan cycle. | |
customerImpact | number | Magnitude of customer/business impact if this project is delivered. |
Scoring Snapshot
| Field | Type | Required | Notes |
|---|---|---|---|
iniScore | number | INI score Read only. | |
nwplatScore | number | NWPLAT score Read only. | |
nwplatEolScore | number | Derived from the upgradeFrom software's EOL date. Higher = more urgent. Read only. | |
benefitScore | number | Benefit score Read only. | |
compositeScore | number | Composite score Read only. | |
rank | number | Rank Read only. | |
scoredAt | timestamp | Scored At Read only. |
Additional panels. This definition also includes the following non-form panels: mtpcostgrid (Cost Model Lines).
Relationships
- Lookups:
pjIdpoints at aPJrecord.
Creating a MTP Project via the API
POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json
{
"entity": "MTPPJ",
"level": 461,
"comboKey": "SUB:<your-sub-id>|ENT:",
"pjId": "",
"included": false,
"rankLocked": false,
"startYear": 1
}
Listing MTP Projects records
# All mtp projects in your tenant
GET /v1/entities/MTPPJ/SUB