Customizing
Version 27 Version 26 39.5.25 39.5.23 39.5.22 39.5.21 39.5.20 39.5.19 39.5.18 39.5.17 German English
Version 27 Version 26 39.5.25 39.5.23 39.5.22 39.5.21 39.5.20 39.5.19 39.5.18 39.5.17 German English

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

Function

Parameters

Return Value

Description

PeriodCreator.__enter__(self)


The PeriodCreator instance

Enter 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

Function

Parameters

Return Value

Description

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: Resource

Amount of child resources


get_start_end_period_from_db(res_id)

res_id: Resource

Start and end period as a tuple

Fetch 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

Python
from ppms.period import PeriodCreator

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