تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
3058 أدوات العرض

I am facing a issue when i want to upgrade odoo with -u all option or from front end by upgrading base module. An error is generating during that process from odoo delivery module. how to solve it?


Odoo Server Error
Traceback (most recent call last):
  File "/odoo12/odoo/odoo/tools/convert.py", line 758, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/odoo12/odoo/odoo/tools/convert.py", line 663, in _tag_record
    record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
  File "/odoo12/odoo/odoo/models.py", line 3908, in _load_records
    records = self._load_records_create([data['values'] for data in to_create])
  File "/odoo12/odoo/odoo/models.py", line 3822, in _load_records_create
    return self.create(values)
  File "<decorator-gen-3>", line 2, in create
  File "/odoo12/odoo/odoo/api.py", line 462, in _model_create_multi
    return create(self, arg)
  File "/odoo12/odoo/odoo/models.py", line 3603, in create
    records = self._create(data_list)
  File "/odoo12/odoo/odoo/models.py", line 3703, in _create
    cr.execute(query, params)
  File "/odoo12/odoo/odoo/sql_db.py", line 148, in wrapper
    return f(self, *args, **kwargs)
  File "/odoo12/odoo/odoo/sql_db.py", line 225, in execute
    res = self._obj.execute(query, params)
psycopg2.IntegrityError: insert or update on table "delivery_carrier" violates foreign key constraint "delivery_carrier_product_id_fkey"
DETAIL:  Key (product_id)=(1) is not present in table "product_product".


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/odoo12/odoo/odoo/http.py", line 656, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/odoo12/odoo/odoo/http.py", line 314, in _handle_exception
    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
  File "/odoo12/odoo/odoo/tools/pycompat.py", line 87, in reraise
    raise value
  File "/odoo12/odoo/odoo/http.py", line 698, in dispatch
    result = self._call_function(**self.params)
  File "/odoo12/odoo/odoo/http.py", line 346, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/odoo12/odoo/odoo/service/model.py", line 98, in wrapper
    return f(dbname, *args, **kwargs)
  File "/odoo12/odoo/odoo/http.py", line 339, in checked_call
    result = self.endpoint(*a, **kw)
  File "/odoo12/odoo/odoo/http.py", line 941, in __call__
    return self.method(*args, **kw)
  File "/odoo12/odoo/odoo/http.py", line 519, in response_wrap
    response = f(*args, **kw)
  File "/odoo12/odoo/addons/web/controllers/main.py", line 967, in call_button
    action = self._call_kw(model, method, args, {})
  File "/odoo12/odoo/addons/web/controllers/main.py", line 955, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/odoo12/odoo/odoo/api.py", line 759, in call_kw
    return _call_kw_multi(method, model, args, kwargs)
  File "/odoo12/odoo/odoo/api.py", line 746, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "<decorator-gen-67>", line 2, in button_immediate_upgrade
  File "/odoo12/odoo/odoo/addons/base/models/ir_module.py", line 74, in check_and_log
    return method(self, *args, **kwargs)
  File "/odoo12/odoo/odoo/addons/base/models/ir_module.py", line 627, in button_immediate_upgrade
    return self._button_immediate_function(type(self).button_upgrade)
  File "/odoo12/odoo/odoo/addons/base/models/ir_module.py", line 561, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/odoo12/odoo/odoo/modules/registry.py", line 86, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/odoo12/odoo/odoo/modules/loading.py", line 417, in load_modules
    force, status, report, loaded_modules, update_module, models_to_check)
  File "/odoo12/odoo/odoo/modules/loading.py", line 313, in load_marked_modules
    perform_checks=perform_checks, models_to_check=models_to_check
  File "/odoo12/odoo/odoo/modules/loading.py", line 222, in load_module_graph
    load_data(cr, idref, mode, kind='data', package=package, report=report)
  File "/odoo12/odoo/odoo/modules/loading.py", line 68, in load_data
    tools.convert_file(cr, package.name, filename, idref, mode, noupdate, kind, report)
  File "/odoo12/odoo/odoo/tools/convert.py", line 802, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/odoo12/odoo/odoo/tools/convert.py", line 865, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/odoo12/odoo/odoo/tools/convert.py", line 755, in parse
    self.parse(rec, mode)
  File "/odoo12/odoo/odoo/tools/convert.py", line 764, in parse
    exc_info[2]
  File "/odoo12/odoo/odoo/tools/pycompat.py", line 86, in reraise
    raise value.with_traceback(tb)
  File "/odoo12/odoo/odoo/tools/convert.py", line 758, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/odoo12/odoo/odoo/tools/convert.py", line 663, in _tag_record
    record = model.with_context(rec_context)._load_records([data], self.mode == 'update')
  File "/odoo12/odoo/odoo/models.py", line 3908, in _load_records
    records = self._load_records_create([data['values'] for data in to_create])
  File "/odoo12/odoo/odoo/models.py", line 3822, in _load_records_create
    return self.create(values)
  File "<decorator-gen-3>", line 2, in create
  File "/odoo12/odoo/odoo/api.py", line 462, in _model_create_multi
    return create(self, arg)
  File "/odoo12/odoo/odoo/models.py", line 3603, in create
    records = self._create(data_list)
  File "/odoo12/odoo/odoo/models.py", line 3703, in _create
    cr.execute(query, params)
  File "/odoo12/odoo/odoo/sql_db.py", line 148, in wrapper
    return f(self, *args, **kwargs)
  File "/odoo12/odoo/odoo/sql_db.py", line 225, in execute
    res = self._obj.execute(query, params)
odoo.tools.convert.ParseError: "insert or update on table "delivery_carrier" violates foreign key constraint "delivery_carrier_product_id_fkey"
DETAIL:  Key (product_id)=(1) is not present in table "product_product".
" while parsing /odoo12/odoo/addons/delivery/data/delivery_data.xml:17, near
<record id="free_delivery_carrier" model="delivery.carrier">
            <field name="name">Free delivery charges</field>
            <field name="fixed_price">0.0</field>
            <field name="free_over" eval="True"/>
            <field name="amount">1000</field>
            <field name="sequence">1</field>
            <field name="delivery_type">fixed</field>
            <field name="product_id" ref="delivery.product_product_delivery"/>
        </record>
الصورة الرمزية
إهمال

The issue related to a default product may deleted so you need to create a product with id product_product_delivery. You can import it from excel and set the id to product_product_delivery

<record id="product_product_delivery" model="product.product">

<field name="name">Free delivery charges</field>

<field name="default_code">Delivery_007</field>

<field name="type">service</field>

<field name="categ_id" ref="delivery.product_category_deliveries"/>

<field name="sale_ok" eval="False"/>

<field name="purchase_ok" eval="False"/>

<field name="list_price">0.0</field>

Hey Ishfaq,

Try to upgrade a single module one by one seeing in the traceback logs. For example, -u delivery. Generally, it works. Hope it works for you too.

Note: You should avoid upgrading all modules using -u all unless and until there's no scope or you don't see your changes.

Thank you!

Regards,

Email: odoo@aktivsoftware.com

Skype: kalpeshmaheshwari

المنشورات ذات الصلة الردود أدوات العرض النشاط
3
يوليو 19
7154
2
يناير 20
3275
2
يونيو 21
5023
1
ديسمبر 19
6507
4
يوليو 25
2279