Skip to main content
Skip table of contents

PLANTA Scheduling API Reference

  • The scheduling functionality is accessible via the Scheduling module.
  • To use it, simply write import scheduling in the code that is to be run by PLANTA Server.

SchedulingType

Enum Name
Enum Value
Comment
CAPACITY_SCHEDULING0capacity scheduling
UNLOAD_SCHEDULING1unload project
TIME_SCHEDULING2time scheduling

Scheduling Convenience Functions

  • All of the following functions either take
  1. (technical) project id arguments, e.g. scheduling.unload('4711', '4811'), or
  2. an iterable of technical project ids, e.g. scheduling.unload(['4711', '4811'])
  • They return nothing (None)
  • Projects which cannot be found are skipped silently!
Function Name
Comment
unload()Unload the projects in question
reschedule()Perform a rescheduling for the projects in question
schedule_capacity()Capacity scheduling
schedule_time()Plain time based scheduling

Internal Scheduling Functionality

Function Name
Parameter Description
Comment
schedule(seq, sched_action, rescheduling)seq: iterable (technical project ids)
sched_action: see SchedulingType
rescheduling: boolean
For internal use only

Effort Distribution

Function Name
Parameter Description
Comment
distribute_effort(seq)seq: iterable containing dtp records from table 801For internal use only

Simulation

Simulation class

The Simulation class adds a bit of syntactic sugar to the simulation API as it provides indirect access to the simulation API and automatically clears the simulation on __exit__.

Method
Parameter(s)
Return value
Comment
add_relation()project: project uuid
activity1: predecessor uuid
activity2: successor uuid
noneadd relation to simulation environment
remove_relation()project: project uuid
activity1: predecessor uuid
activity2: successor uuid
noneremove relation from the simulation environment

Direct use of the simulation API is also possible.

Function Name
Parameter Description
Comment
simulation_add_relation(project, activity1, activity2)project: project uuid
activity1: predecessor uuid
activity2: successor uuid
add relation to simulation environment
simulation_remove_relation(project, activity1, activity2)project: project uuid
activity1: predecessor uuid
activity2: successor uuid
remove relation from simulation environment
simulation_clear()
clear simulation environment

Cycle Check

Function Name
Parameter Description
Comment
project_has_cycle(project)project: project uuidreturns true if project contains cycle, false otherwise (respects simulation environment)
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.