Skip to Content
Menu
This question has been flagged
6 Replies
3269 Views
Good night,
I am trying to update a new created field ("code") in the units of measure, but this error appears. What can be? The error is generated with the category_id column, but it is requested as a mandatory column, what value should I put? Please appreciate your support.
# -*- coding: utf-8 -*-
from odoo import fields,models,api
class UomUom(models.Model):
_inherit = "uom.uom"
code=fields.Char(string="Codigo")
description=fields.Char(string="Descripcion")
<?xml version="1.0" encoding="UTF-8"?>
<odoo>     <data noupdate="0">
        <record id='uom_uom_unit' model='uom.uom'><field name='category_id'>1</field><field name='name'>number of international units</field><field name='code'>code01</field><field name='description'>number of international units</field></record>
    </data>
</odoo>
Odoo Server Error
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 757, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 662, in _tag_record
    record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3821, in _load_records
    records = self._load_records_create([data['values'] for data in to_create])
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3735, in _load_records_create
    return self.create(values)
  File "<decorator-gen-98>", line 2, in create
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
    return create(self, arg)
  File "/usr/lib/python3/dist-packages/odoo/addons/uom/models/uom_uom.py", line 103, in create
    return super(UoM, self).create(vals_list)
  File "<decorator-gen-3>", line 2, in create
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
    return create(self, arg)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3516, in create
    records = self._create(data_list)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3648, in _create
    records._validate_fields(name for data in data_list for name in data['stored'])
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 1108, in _validate_fields
    check(self)
  File "/usr/lib/python3/dist-packages/odoo/addons/uom/models/uom_uom.py", line 95, in _check_category_reference_uniqueness
    raise ValidationError(_("UoM category %s should only have one reference unit of measure.") % (self.env['uom.category'].browse(uom_data['category_id']).name,))
odoo.exceptions.ValidationError: ('UoM category Unit should only have one reference unit of measure.', None)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 654, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 312, in _handle_exception
    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
  File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 87, in reraise
    raise value
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 696, in dispatch
    result = self._call_function(**self.params)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 344, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 97, in wrapper
    return f(dbname, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 337, in checked_call
    result = self.endpoint(*a, **kw)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 939, in __call__
    return self.method(*args, **kw)
  File "/usr/lib/python3/dist-packages/odoo/http.py", line 517, in response_wrap
    response = f(*args, **kw)
  File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 966, in call_button
    action = self._call_kw(model, method, args, {})
  File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 954, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 749, in call_kw
    return _call_kw_multi(method, model, args, kwargs)
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 736, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "<decorator-gen-67>", line 2, in button_immediate_upgrade
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 73, in check_and_log
    return method(self, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 614, in button_immediate_upgrade
    return self._button_immediate_function(type(self).button_upgrade)
  File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 553, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/usr/lib/python3/dist-packages/odoo/modules/registry.py", line 86, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 417, in load_modules
    force, status, report, loaded_modules, update_module, models_to_check)
  File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 313, in load_marked_modules
    perform_checks=perform_checks, models_to_check=models_to_check
  File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 222, in load_module_graph
    load_data(cr, idref, mode, kind='data', package=package, report=report)
  File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 68, in load_data
    tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind, report)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 801, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 864, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 754, in parse
    self.parse(rec, mode)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 763, in parse
    exc_info[2]
  File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 86, in reraise
    raise value.with_traceback(tb)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 757, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/usr/lib/python3/dist-packages/odoo/tools/convert.py", line 662, in _tag_record
    record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3821, in _load_records
    records = self._load_records_create([data['values'] for data in to_create])
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3735, in _load_records_create
    return self.create(values)
  File "<decorator-gen-98>", line 2, in create
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
    return create(self, arg)
  File "/usr/lib/python3/dist-packages/odoo/addons/uom/models/uom_uom.py", line 103, in create
    return super(UoM, self).create(vals_list)
  File "<decorator-gen-3>", line 2, in create
  File "/usr/lib/python3/dist-packages/odoo/api.py", line 452, in _model_create_multi
    return create(self, arg)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3516, in create
    records = self._create(data_list)
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 3648, in _create
    records._validate_fields(name for data in data_list for name in data['stored'])
  File "/usr/lib/python3/dist-packages/odoo/models.py", line 1108, in _validate_fields
    check(self)
  File "/usr/lib/python3/dist-packages/odoo/addons/uom/models/uom_uom.py", line 95, in _check_category_reference_uniqueness
    raise ValidationError(_("UoM category %s should only have one reference unit of measure.") % (self.env['uom.category'].browse(uom_data['category_id']).name,))
odoo.tools.convert.ParseError: "UoM category Unit should only have one reference unit of measure.
None" while parsing /mnt/extra-addons/efact/data/uom_uom.xml:4, near
<record id="uom_uom_unit" model="uom.uom"><field name="category_id">1</field><field name="name">number of international units</field><field name="code">NIU</field><field name="description">number of international units</field></record>

Avatar
Discard

Some times it helps to read the error message before posting a question. This also helps to use a meaningful title.

Best Answer

I think the error is that you are creating a second Reference Unit for the "Unit" category.  You either need to give it a different category or define the ratio (factor) compared with the Reference Unit.

Avatar
Discard
Best Answer

Hi,  

try to add bom_type when you add the Unit of measure.By default, if we didn't specify the Uom type it will be "Reference Unit of measure for this category".So it will raise an Error.So add Uom type in Your code.
<record id='uom_uom_unit' model='uom.uom'>
         <field name='category_id' ref="EXTERNAL_ID_OF_CATEGORY"/>
         <field name='name'>number of international units</field>
         <field name='code'>code01</field>
         <field name='description'>number of international units</field>
         <field name="uom_type">"UOM_TYPE"</field>
     </record>V

Avatar
Discard
Best Answer

Chris is right, starting with Odoo 12 only 1 reference unit of measure is allowed per category. Use bigger or smaller type with factor 1 instead

Avatar
Discard
Best Answer

 

Avatar
Discard

Please do:

- NOT simply post a link with no explanation

- NOT promote a paid module this way

The function of the module is not related to question posted, the module does not explain how it works and in this matter can lead to serious damage, also the module icon is a copy of the logo of the renowned Odoo partner Vauxoo.

Noted with thanks. I will be update it, thanks

On Wed, Sep 9, 2020 at 12:57 PM Ermin Trevisan <trevi@twanda.com> wrote:

Please do:

- NOT simply post a link with no explanation

- NOT promote a paid module this way

The function of the module is not related to question posted, the module does not explain how it works and in this matter can lead to serious damage, also the module icon is a copy of the logo of the renowned Odoo partner Vauxoo.

Sent by Odoo S.A. using Odoo.



--
Хүндэтгэсэн :
--
Жаргалсайхан Төрбат
Мэдээллийн Системийн Мэргэжилтэн
And i have changed logo, but its won't change this update on the odoo site

On Wed, Sep 9, 2020 at 2:51 PM Torbat Jargalsaikhan <torbatj79@gmail.com> wrote:
Noted with thanks. I will be update it, thanks

On Wed, Sep 9, 2020 at 12:57 PM Ermin Trevisan <trevi@twanda.com> wrote:

Please do:

- NOT simply post a link with no explanation

- NOT promote a paid module this way

The function of the module is not related to question posted, the module does not explain how it works and in this matter can lead to serious damage, also the module icon is a copy of the logo of the renowned Odoo partner Vauxoo.

Sent by Odoo S.A. using Odoo.



--
Хүндэтгэсэн :
--
Жаргалсайхан Төрбат
Мэдээллийн Системийн Мэргэжилтэн


--
Хүндэтгэсэн :
--
Жаргалсайхан Төрбат
Мэдээллийн Системийн Мэргэжилтэн
Related Posts Replies Views Activity
3
Nov 23
15301
3
Nov 24
21042
1
Apr 23
4559
2
Dec 22
5494
1
Nov 22
2658