Odoo Mindscape. Understand Odoo faster. Explore modules, fields, dependencies and version differences in one place instead of digging through the source code.

Module: Key Performance Indicator

Entity: kpi.threshold

Compute Method: _compute_is_valid_threshold

Inputs Method Outputs
  • valid
  • max_value
  • min_value
for obj in self:
            # check if ranges overlap
            # TODO: This code can be done better
            obj.valid = True
            for range1 in obj.range_ids:
                if not range1.valid:
                    obj.valid = False
                    break
                for range2 in obj.range_ids - range1:
                    if (
                        range1.max_value >= range2.min_value
                        and range1.min_value <= range2.max_value
                    ):
                        obj.valid = False
                        break
            if obj.valid:
                obj.invalid_message = None
            else:
                obj.invalid_message = (
                    "Some ranges are invalid or overlapping. "
                    "Please make sure your ranges do not overlap."
                )

Back to entity