Skip to main content
Skip table of contents

ppms.period

Die nachfolgenden Inhalte sind nur in englischer Sprache verfügbar.

The period API lets you create and delete periods.

Classes

PeriodCreator

The PeriodCreator is a context manager for creating new periods.

Methods

FunctionParametersReturn ValueDescription
PeriodCreator.__enter__(self)
The PeriodCreator instanceEnter the context to queue up period changes
PeriodCreator.__exit__(self, type, value, tb)type: Exception Type
value: Exception instance
tb: Traceback

When the context is left, all periods are created
PeriodCreator.add(self, res_id, start_period, end_period)res_id: The Resource to add periods for
start_period: Days since 01.01.1970
end_period: Days since 01.01.1970

Adds a resource and timeframe to generate periods for. When the context is left, these periods will be created.

Note: The newly created periods will not be aggregated

Functions

FunctionParametersReturn ValueDescription
aggregate_periods(parent_res_id, start_period, end_period)parent_res_id: Resource
start_period: Days since 01.01.1970
end_period: Days since 01.01.1970

Aggregate the periods of the parent_res_id in the given timeframe up across all parent resources
aggregate_periods_from_start_to_end(res_id)res_id: Resource
Aggregate all periods of the resource based on their Start period and End period
any_child_resource_has_workday(resource_id, period)resource_id: Resource
period: Days since 01.01.1970
True if the given period is a workday for any child resource, False if it is not.Check whether a given date is a workday for any child resource of a department
delete_obsolete_periods(res_id)res_id: Resource
Delete all period records outside the Start period and End period
get_amount_of_children(parent_res_id)parent_res_id: ResourceAmount of child resources
get_start_end_period_from_db(res_id)res_id: ResourceStart and end period as a tupleFetch the start and end period of a resource from the database
reset_summarized_periods(res_id)res_id: Resource
Sets all aggregated data items in the period table to 0

Examples

Creating new periods

PY
from ppms.period import PeriodCreator

with PeriodCreator() as creator:
    creator.add('R2', (100, 200))
    creator.add('R41', (100, 800))
JavaScript errors detected

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

If this problem persists, please contact our support.