Read project
rillsoft_project_tree_getRead a complete Rillsoft project as a tree: status date, subprojects, tasks, dependencies, assignments, shared resources, and optional position ranges.
Instructions
Use this to read tasks and dependencies: it returns the whole project as a tree - key data including the status date, subprojects, tasks (UUID, WBS, computed dates, milestone and critical flags, progress and effort) and every dependency. There is no separate task list tool; this is the read path for them. Read-only, no undo step. Each task carries four assignment arrays: assignments[] (roles), employeeAssignments[], machineRoleAssignments[] and machineAssignments[] - empty where the task holds nothing of that resource type. Where several tasks use one machine or machine role together, it appears in none of those arrays but in sharedAssignments[] (type, id, name, quantity, utilization, sharedTaskUuids[] holding the UUIDs of the other tasks involved); that field is absent where the task shares nothing. A task with sameRow:true is drawn on one display row together with its WBS predecessor. With includePositionRange:true the position range per task is reported as well. Beware: the critical field is not a float indicator.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| includePositionRange | No | true = report the position range per task as well: earliestStart and latestFinish (DD.MM.YYYY hh:mm) plus startReserveHours and finishReserveHours. Computed against the nearest fixed frame (subproject or project) and never before the status date. Beware: moving a task inside that range CAN drag its successors along - this is the total float of network analysis, not the free float. Subprojects and the main project do not carry these fields; what they show is the envelope of their children, not a range of their own. Requires the Builder.bReserve setting, otherwise the call fails. Defaults to false |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| wbs | Yes | WBS code | |
| code | No | code of the element; missing when empty | |
| name | Yes | name | |
| type | Yes | kind of the element | |
| uuid | Yes | UUID of the element | |
| color | No | bar color as #RRGGBB or 'automatic' | |
| fixed | Yes | date is fixed | |
| notes | No | notes; missing when empty | |
| start | Yes | start, DD.MM.YYYY hh:mm | |
| finish | Yes | finish, DD.MM.YYYY hh:mm | |
| number | Yes | number of the element; unique even for split tasks | |
| sameRow | No | true = shares one display row with the WBS predecessor; missing otherwise | |
| critical | No | true = on the critical path; not a float indicator | |
| elements | Yes | child elements in WBS order | |
| priority | No | priority in percent; not reported in a portfolio | |
| statusId | No | id of the project status; not reported in a portfolio | |
| fixedType | No | task type of the resource block; missing while it is undetermined | |
| milestone | No | true = milestone | |
| portfolio | Yes | true = the open document is a portfolio | |
| calendarId | No | own calendar; 0 = inherited from the parent element | |
| categoryId | No | id of the project category; not reported in a portfolio | |
| customerId | No | id of the customer; not reported in a portfolio | |
| planNumber | No | number of the plan variant; not reported in a portfolio | |
| statusDate | Yes | status date, DD.MM.YYYY hh:mm | |
| assignments | No | role assignments | |
| effortHours | No | effort in hours | |
| dependencies | Yes | all dependencies of the project | |
| latestFinish | No | latest possible finish; only with includePositionRange:true | |
| primaryColor | No | color is inherited by child elements | |
| durationHours | No | duration in hours | |
| earliestStart | No | earliest possible start; only with includePositionRange:true | |
| effortEditable | No | effort may be entered on the task | |
| preferredTeams | No | preferred teams; missing when none is set | |
| schedulingMode | No | scheduling mode; not reported in a portfolio | |
| effortDoneHours | No | completed effort in hours | |
| progressPercent | No | actual progress in percent | |
| teamAssignments | No | team assignments; missing when the task carries no team | |
| timeStepMinutes | No | input time grid in minutes | |
| durationStepUnit | No | unit used to enter a duration | |
| quantityStepUnit | No | unit used to enter a quantity | |
| sharedAssignments | No | machine roles and machines shared with other tasks; missing when the task shares nothing | |
| startReserveHours | No | start reserve in hours; only with includePositionRange:true | |
| finishReserveHours | No | finish reserve in hours; only with includePositionRange:true | |
| machineAssignments | No | machine assignments | |
| employeeAssignments | No | assignments of specific people | |
| materialAssignments | No | material assignments | |
| dynamicRedistribution | No | redistribute effort dynamically; not reported in a portfolio | |
| machineRoleAssignments | No | machine role assignments | |
| outputQuantityEditable | No | output quantity may be entered on the task | |
| dynamicRedistributionEffective | No | the switch as the scheduling applies it: true where the project or the task carries it, scheduling is capacity_driven and the task carries named people. A task that only inherits from the project has dynamicRedistribution false and this one true |