Skip to Content
Menu
This question has been flagged
2 Replies
2279 Views

hello am downloading a custom module
and its gives me error :

Traceback (most recent call last):
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 641, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 683, in dispatch
    result = self._call_function(**self.params)
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 333, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo/odoo-10.0/odoo/service/model.py", line 101, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 326, in checked_call
    result = self.endpoint(*a, **kw)
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 941, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo/odoo-10.0/odoo/http.py", line 506, in response_wrap
    response = f(*args, **kw)
  File "/opt/odoo/odoo-10.0/addons/web/controllers/main.py", line 896, in call_button
    action = self._call_kw(model, method, args, {})
  File "/opt/odoo/odoo-10.0/addons/web/controllers/main.py", line 884, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo/odoo-10.0/odoo/api.py", line 689, in call_kw
    return call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo/odoo-10.0/odoo/api.py", line 680, in call_kw_multi
    result = method(recs, *args, **kwargs)
  File "/opt/odoo/odoo-10.0/odoo/addons/base/module/module.py", line 411, in button_immediate_install
    return self._button_immediate_function(type(self).button_install)
  File "/opt/odoo/odoo-10.0/odoo/addons/base/module/module.py", line 485, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/opt/odoo/odoo-10.0/odoo/modules/registry.py", line 83, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/opt/odoo/odoo-10.0/odoo/modules/loading.py", line 339, in load_modules
    loaded_modules, update_module)
  File "/opt/odoo/odoo-10.0/odoo/modules/loading.py", line 237, in load_marked_modules
    loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
  File "/opt/odoo/odoo-10.0/odoo/modules/loading.py", line 156, in load_module_graph
    _load_data(cr, module_name, idref, mode, kind='data')
  File "/opt/odoo/odoo-10.0/odoo/modules/loading.py", line 95, in _load_data
    tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report)
  File "/opt/odoo/odoo-10.0/odoo/tools/convert.py", line 845, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/opt/odoo/odoo-10.0/odoo/tools/convert.py", line 915, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/opt/odoo/odoo-10.0/odoo/tools/convert.py", line 796, in parse
    self.parse(rec, mode)
  File "/opt/odoo/odoo-10.0/odoo/tools/convert.py", line 799, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/opt/odoo/odoo-10.0/odoo/tools/convert.py", line 707, in _tag_record
    id = self.env(context=rec_context)['ir.model.data']._update(rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode)
  File "/opt/odoo/odoo-10.0/odoo/addons/base/ir/ir_model.py", line 1236, in _update
    record = record.create(values)
  File "/opt/odoo/odoo-10.0/odoo/addons/base/ir/ir_ui_view.py", line 362, in create
    return super(View, self).create(self._compute_defaults(values))
  File "/opt/odoo/odoo-10.0/odoo/models.py", line 3855, in create
    self._fields[key].determine_inverse(record)
  File "/opt/odoo/odoo-10.0/odoo/fields.py", line 1046, in determine_inverse
    getattr(records, self.inverse)()
  File "/opt/odoo/odoo-10.0/odoo/addons/base/ir/ir_ui_view.py", line 220, in _inverse_arch
    view.write(data)
  File "/opt/odoo/odoo-10.0/odoo/addons/base/ir/ir_ui_view.py", line 380, in write
    return super(View, self).write(self._compute_defaults(vals))
  File "/opt/odoo/odoo-10.0/odoo/models.py", line 3568, in write
    self._write(old_vals)
  File "/opt/odoo/odoo-10.0/odoo/models.py", line 3732, in _write
    self._validate_fields(vals)
  File "/opt/odoo/odoo-10.0/odoo/models.py", line 1081, in _validate_fields
    raise ValidationError("%s\n\n%s" % (_("Error while validating constraint"), tools.ustr(e)))
ParseError: "Error while validating constraint

Field `discount_fixed` does not exist

Error context:
View `pos.order.invoice.extend`
[view_id: 659, xml_id: n/a, model: account.invoice, parent_id: 419]
None" while parsing /opt/odoo/odoo-10.0/addons/fixed_discount_pos/views/account_invoice_view_pos.xml:5, near
<record model="ir.ui.view" id="view_pos_invoice_new_extended">
            <field name="name">pos.order.invoice.extend</field>
            <field name="model">account.invoice</field>
            <field name="inherit_id" ref="account.invoice_form"/>
            <field name="arch" type="xml">
                <data><xpath expr="//field[@name='discount']" position="after">
                    <field name="discount_fixed" groups="sale.group_discount_per_so_line">discount_fixed</field>
                </xpath>

                <xpath expr="//field[@name='amount_tax']" position="after">
                    <field name="discount_total"/>
                    <field name="discount_percent"/>
                </xpath>
            </data></field>
    </record>


and here is the xml:

<?xml version="1.0"?>
<odoo>
<data>

<record model="ir.ui.view" id="view_pos_invoice_new_extended">
<field name="name">pos.order.invoice.extend</field>
<field name="model">account.invoice</field>
<field name="inherit_id" ref="account.invoice_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='discount']" position="after">
<field name="discount_fixed" groups="sale.group_discount_per_so_line">discount_fixed</field>
</xpath>

<xpath expr="//field[@name='amount_tax']" position="after">
<field name="discount_total"/>
<field name="discount_percent"/>
</xpath>
</field>
</record>
</data>
</odoo>


am new with this can you please help me to find the error

Avatar
Discard
Best Answer

just restart your server before upgrading. only the DB tables are updated after restarting the server.

Avatar
Discard
Best Answer

Hi,

The error message says that the field you have added in the view is not existing in the corresponding model.


So what you have to do is that inherit the model account.invoice model and add the field discount_fixed to it.


class AccountInvoice(models.Model):
_inherit = 'account.invoice'

discount_fixed = fields.Char(string='Fixed Discount')


If you already had added this, check whether the corresponding py file is called in init file


Thanks

Avatar
Discard
Author

i already check that ,

i tried every thing i know and not working

Related Posts Replies Views Activity
1
Apr 16
6638
2
May 16
7296
1
Dec 15
4026
0
Apr 17
3664
3
May 16
6157