auxi.modelling.business.models module

This module provides classes to work with business models.

class auxi.modelling.business.models.TimeBasedModel(name, description=None, start_datetime=datetime.datetime(2016, 8, 5, 7, 56, 46, 639863), period_duration=<TimePeriod.year: 8>, period_count=1)

Bases: auxi.core.objects.NamedObject

Represents an time based model class. An instance of this class is by default configured to run only once, thus functioning as a steady state model. The instance’s time based parameters must be configured for it to function as a time based model.

Parameters:
  • name – The name.
  • description – The description.
  • start_datetime – The start datetime of the model.
  • period_duration – The duration of the model’s time period. e.g. month, day etc.
  • period_count – The number of periods to execute the model for.
create_entity(name, gl_structure, description=None)

Create an entity and add it to the model.

Parameters:
  • name – The entity name.
  • gl_structure – The entity’s general ledger structure.
  • description – The entity description.
Returns:

The created entity.

name
prepare_to_run()

Prepare the model for execution.

remove_entity(name)

Remove an entity from the model.

Parameters:name – The name of the entity to remove.
run()

Execute the model.