mirror of
https://github.com/NaN-tic/trytond-babi.git
synced 2023-12-14 02:53:06 +01:00
Deleted on_change_measures method and added a domain in expression field of Measure model
This commit is contained in:
parent
e3ecb930a2
commit
4b6a4a05d0
20
babi.py
20
babi.py
|
@ -704,20 +704,6 @@ class Report(ModelSQL, ModelView):
|
|||
if execution.state == 'calculated' and not execution.filtered:
|
||||
return execution.id
|
||||
|
||||
@fields.depends('measures')
|
||||
def on_change_measures(self):
|
||||
field_types_dict = dict(FIELD_TYPES)
|
||||
aggregate_types_dict = dict(AGGREGATE_TYPES)
|
||||
for measure in self.measures:
|
||||
if measure and measure.aggregate in ('sum', 'avg'):
|
||||
if (measure.expression and measure.expression.ttype
|
||||
not in ('integer', 'float', 'numeric')):
|
||||
raise UserError(
|
||||
gettext('babi.invalid_measures_type',
|
||||
ttype=field_types_dict.get(measure.expression.ttype),
|
||||
expression=measure.expression.name,
|
||||
aggregate=aggregate_types_dict.get(measure.aggregate)))
|
||||
|
||||
@classmethod
|
||||
def write(cls, *args):
|
||||
actions = iter(args)
|
||||
|
@ -2247,7 +2233,11 @@ class Measure(ModelSQL, ModelView):
|
|||
expression = fields.Many2One('babi.expression', 'Expression',
|
||||
required=True, domain=[
|
||||
('model', '=', Eval('_parent_report', {}).get('model', 0)),
|
||||
])
|
||||
If(Eval('aggregate').in_(['sum', 'avg']), [
|
||||
('ttype', 'in', ['integer', 'float', 'numeric']),
|
||||
],
|
||||
[])
|
||||
], depends=['aggregate'])
|
||||
aggregate = fields.Selection(AGGREGATE_TYPES, 'Aggregate', required=True)
|
||||
internal_measures = fields.One2Many('babi.internal.measure',
|
||||
'measure', 'Internal Measures')
|
||||
|
|
|
@ -766,14 +766,6 @@ msgstr ""
|
|||
"L'execució \"%(execution)s\" té paràmetres de filtre i vostè no va "
|
||||
"proporcionar cap d'ells. Si us plau executa-ho des del menú."
|
||||
|
||||
msgctxt "model:ir.message,text:invalid_measures_type"
|
||||
msgid ""
|
||||
"Measures: Invalid field type \"%(ttype)s\" for expression \"%(expression)s\""
|
||||
" for aggregate \"%(aggregate)s\"."
|
||||
msgstr ""
|
||||
"Mesures: tipus de camp no vàlid \"%(ttype)s\" per l'expressió "
|
||||
"\"%(expression)s\" per l'agregat \"%(aggregate)s\"."
|
||||
|
||||
msgctxt "model:ir.message,text:no_dimensions"
|
||||
msgid "Report \"%(report)s\" has no dimensions. At least one is needed."
|
||||
msgstr "L'informe \"%(report)s\" no té dimensions. Al menys un és necessari."
|
||||
|
|
|
@ -766,14 +766,6 @@ msgstr ""
|
|||
"La ejecución \"%(execution)s\" tiene parámetros de filtro y usted no "
|
||||
"proporcionó ninguno de ellos. Por favor ejecutalo desde el menu."
|
||||
|
||||
msgctxt "model:ir.message,text:invalid_measures_type"
|
||||
msgid ""
|
||||
"Measures: Invalid field type \"%(ttype)s\" for expression \"%(expression)s\""
|
||||
" for aggregate \"%(aggregate)s\"."
|
||||
msgstr ""
|
||||
"Medidas: tipo de campo no válido \"%(ttype)s\" para la expresión "
|
||||
"\"%(expression)s\" para el agregado \"%(aggregate)s\"."
|
||||
|
||||
msgctxt "model:ir.message,text:no_dimensions"
|
||||
msgid "Report \"%(report)s\" has no dimensions. At least one is needed."
|
||||
msgstr "El informe \"%(report)s\" no tiene dimensiones. Al menos se necesita uno."
|
||||
|
|
|
@ -48,8 +48,5 @@ this repository contains the full copyright notices and license terms. -->
|
|||
<record model="ir.message" id="false">
|
||||
<field name="text">False</field>
|
||||
</record>
|
||||
<record model="ir.message" id="invalid_measures_type">
|
||||
<field name="text">Measures: Invalid field type "%(ttype)s" for expression "%(expression)s" for aggregate "%(aggregate)s".</field>
|
||||
</record>
|
||||
</data>
|
||||
</tryton>
|
||||
|
|
Loading…
Reference in a new issue