Integer, Numeric and Float allow None as value

NULL value is None and not False

issue2022
review237004
This commit is contained in:
Nicolas Évrard
2012-03-23 18:38:49 +01:00
parent b94555c750
commit 06f7a2dd00
4 changed files with 29 additions and 18 deletions
+2 -2
View File
@@ -996,9 +996,9 @@ class AccountDeferral(ModelSQL, ModelView):
fiscalyear = fields.Many2One('account.fiscalyear', 'Fiscal Year',
required=True, select=True)
debit = fields.Numeric('Debit', digits=(16, Eval('currency_digits', 2)),
depends=['currency_digits'])
required=True, depends=['currency_digits'])
credit = fields.Numeric('Credit', digits=(16, Eval('currency_digits', 2)),
depends=['currency_digits'])
required=True, depends=['currency_digits'])
currency_digits = fields.Function(fields.Integer('Currency Digits'),
'get_currency_digits')
+1 -4
View File
@@ -57,7 +57,7 @@ class Column(ModelSQL, ModelView):
field = fields.Many2One('ir.model.field', 'Field', required=True,
domain=[('model.model', '=', 'account.move.line')])
view = fields.Many2One('account.journal.view', 'View', select=True)
sequence = fields.Integer('Sequence', select=True)
sequence = fields.Integer('Sequence', select=True, required=True)
required = fields.Boolean('Required')
readonly = fields.Boolean('Readonly')
@@ -161,9 +161,6 @@ class Journal(ModelSQL, ModelView):
return [('code',) + clause[1:]]
return [(self._rec_name,) + clause[1:]]
def check_xml_record(self, ids, values):
return True
Journal()
+14 -6
View File
@@ -443,13 +443,15 @@ class Line(ModelSQL, ModelView):
name = fields.Char('Name', size=None, required=True)
debit = fields.Numeric('Debit', digits=(16, Eval('currency_digits', 2)),
on_change=['account', 'debit', 'credit', 'tax_lines',
'journal', 'move'], depends=['currency_digits', 'credit',
'tax_lines', 'journal'])
required=True,
on_change=['account', 'debit', 'credit', 'tax_lines', 'journal',
'move'],
depends=['currency_digits', 'credit', 'tax_lines', 'journal'])
credit = fields.Numeric('Credit', digits=(16, Eval('currency_digits', 2)),
on_change=['account', 'debit', 'credit', 'tax_lines',
'journal', 'move'], depends=['currency_digits', 'debit',
'tax_lines', 'journal'])
required=True,
on_change=['account', 'debit', 'credit', 'tax_lines', 'journal',
'move'],
depends=['currency_digits', 'debit', 'tax_lines', 'journal'])
account = fields.Many2One('account.account', 'Account', required=True,
domain=[('kind', '!=', 'view')],
select=True,
@@ -570,6 +572,12 @@ class Line(ModelSQL, ModelView):
def default_currency_digits(self):
return 2
def default_debit(self):
return Decimal(0)
def default_credit(self):
return Decimal(0)
def default_get(self, fields, with_rec_name=True):
pool = Pool()
move_obj = pool.get('account.move')
+12 -6
View File
@@ -146,7 +146,7 @@ class Code(ModelSQL, ModelView):
code = fields.Char('Code', size=None, select=True)
active = fields.Boolean('Active', select=True)
company = fields.Many2One('company.company', 'Company', required=True,
select=True)
select=True)
parent = fields.Many2One('account.tax.code', 'Parent', select=True,
domain=[('company', '=', Eval('company', 0))], depends=['company'])
childs = fields.One2Many('account.tax.code', 'parent', 'Children',
@@ -364,7 +364,7 @@ class TaxTemplate(ModelSQL, ModelView):
name = fields.Char('Name', required=True, translate=True)
description = fields.Char('Description', required=True, translate=True)
group = fields.Many2One('account.tax.group', 'Group')
sequence = fields.Integer('Sequence')
sequence = fields.Integer('Sequence', required=True)
amount = fields.Numeric('Amount', digits=(16, 8))
percentage = fields.Numeric('Percentage', digits=(16, 8))
type = fields.Selection([
@@ -564,17 +564,19 @@ class Tax(ModelSQL, ModelView):
'invisible': Bool(Eval('parent')),
}, depends=['parent'])
active = fields.Boolean('Active')
sequence = fields.Integer('Sequence',
sequence = fields.Integer('Sequence', required=True,
help='Use to order the taxes')
currency_digits = fields.Function(fields.Integer('Currency Digits',
on_change_with=['company']), 'get_currency_digits')
amount = fields.Numeric('Amount', digits=(16, Eval('currency_digits', 2)),
states={
'required': Eval('type') == 'fixed',
'invisible': Eval('type') != 'fixed',
}, help='In company\'s currency',
depends=['type', 'currency_digits'])
percentage = fields.Numeric('Percentage', digits=(16, 8),
states={
'required': Eval('type') == 'percentage',
'invisible': Eval('type') != 'percentage',
}, help='In %', depends=['type'])
type = fields.Selection([
@@ -617,6 +619,7 @@ class Tax(ModelSQL, ModelView):
invoice_base_sign = fields.Numeric('Invoice Base Sign', digits=(2, 0),
help='Usualy 1 or -1',
states={
'required': Eval('type') != 'none',
'readonly': Eval('type') == 'none',
}, depends=['type'])
invoice_tax_code = fields.Many2One('account.tax.code',
@@ -627,6 +630,7 @@ class Tax(ModelSQL, ModelView):
invoice_tax_sign = fields.Numeric('Invoice Tax Sign', digits=(2, 0),
help='Usualy 1 or -1',
states={
'required': Eval('type') != 'none',
'readonly': Eval('type') == 'none',
}, depends=['type'])
credit_note_base_code = fields.Many2One('account.tax.code',
@@ -637,6 +641,7 @@ class Tax(ModelSQL, ModelView):
credit_note_base_sign = fields.Numeric('Credit Note Base Sign', digits=(2, 0),
help='Usualy 1 or -1',
states={
'required': Eval('type') != 'none',
'readonly': Eval('type') == 'none',
}, depends=['type'])
credit_note_tax_code = fields.Many2One('account.tax.code',
@@ -647,6 +652,7 @@ class Tax(ModelSQL, ModelView):
credit_note_tax_sign = fields.Numeric('Credit Note Tax Sign', digits=(2, 0),
help='Usualy 1 or -1',
states={
'required': Eval('type') != 'none',
'readonly': Eval('type') == 'none',
}, depends=['type'])
template = fields.Many2One('account.tax.template', 'Template')
@@ -897,7 +903,7 @@ class Line(ModelSQL, ModelView):
currency_digits = fields.Function(fields.Integer('Currency Digits',
on_change_with=['move_line']), 'get_currency_digits')
amount = fields.Numeric('Amount', digits=(16, Eval('currency_digits', 2)),
depends=['currency_digits'])
required=True, depends=['currency_digits'])
code = fields.Many2One('account.tax.code', 'Code', select=True,
required=True)
tax = fields.Many2One('account.tax', 'Tax', select=True,
@@ -1113,7 +1119,7 @@ class RuleLineTemplate(ModelSQL, ModelView):
('group', '=', Eval('group')),
],
depends=['group'])
sequence = fields.Integer('Sequence')
sequence = fields.Integer('Sequence', required=True)
def __init__(self):
super(RuleLineTemplate, self).__init__()
@@ -1208,7 +1214,7 @@ class RuleLine(ModelSQL, ModelView):
('group', '=', Eval('group')),
],
depends=['group'])
sequence = fields.Integer('Sequence')
sequence = fields.Integer('Sequence', required=True)
template = fields.Many2One('account.tax.rule.line.template', 'Template')
def __init__(self):