diff --git a/composer/report/base.py b/composer/report/base.py index 712a22f..e591be2 100644 --- a/composer/report/base.py +++ b/composer/report/base.py @@ -162,6 +162,9 @@ class LeafQueryCriteria(BaseQueryCriteria, Element): if comparisonValue in (None, '',): return True value = self.field.getSelectValue(row) + if (self.field.fieldType == 'number' and + isinstance(comparisonValue, basestring)): + comparisonValue = int(comparisonValue) op = operators.get(self.operator) if op is None: op = getattr(standard_operators, self.operator, None) diff --git a/composer/report/field.py b/composer/report/field.py index ae689ac..03319d1 100644 --- a/composer/report/field.py +++ b/composer/report/field.py @@ -72,8 +72,8 @@ class Field(Component): return row.getRawValue(self.name) def getSelectValue(self, row): - return getattr(row, self.name, None) - #return self.getRawValue(row) # better let row control selection... + return getattr(row, self.name, None) # backwards compatibility + # return self.getRawValue(row) # overwrite with this in subclass def getValue(self, row): value = self.getRawValue(row)