diff --git a/flexmeasures/api/v3_0/sensors.py b/flexmeasures/api/v3_0/sensors.py index e7c9450701..7656db327a 100644 --- a/flexmeasures/api/v3_0/sensors.py +++ b/flexmeasures/api/v3_0/sensors.py @@ -1023,12 +1023,12 @@ def get_schedule( # noqa: C901 ) sign = 1 - if sensor.measures_power and sensor.get_attribute( - "consumption_is_positive", True + if sensor.measures_power and not sensor.get_attribute( + "consumption_is_positive", False ): sign = -1 - # For consumption schedules, positive values denote consumption. For the db, consumption is negative + # For consumption schedules, positive values denote consumption. For the db, consumption is negative unless specified explicitly consumption_schedule = sign * simplify_index(power_values)["event_value"] if consumption_schedule.empty: # for not in-built schedulers, we are not sure if they would store time series in the db diff --git a/flexmeasures/data/services/scheduling.py b/flexmeasures/data/services/scheduling.py index ae3aea6dd6..50502d04fa 100644 --- a/flexmeasures/data/services/scheduling.py +++ b/flexmeasures/data/services/scheduling.py @@ -637,8 +637,8 @@ def make_schedule( # noqa: C901 sign = 1 - if result["sensor"].measures_power and result["sensor"].get_attribute( - "consumption_is_positive", True + if result["sensor"].measures_power and not result["sensor"].get_attribute( + "consumption_is_positive", False ): sign = -1