Skip to Content
Odoo Menu
  • Zaloguj się
  • Wypróbuj za darmo
  • Aplikacje
    Finanse
    • Księgowość
    • Fakturowanie
    • Wydatki
    • Arkusz kalkulacyjny (BI)
    • Dokumenty
    • Podpisy
    Sprzedaż
    • CRM
    • Sprzedaż
    • PoS Sklep
    • PoS Restauracja
    • Subskrypcje
    • Wypożyczalnia
    Strony Internetowe
    • Kreator Stron Internetowych
    • eCommerce
    • Blog
    • Forum
    • Czat na Żywo
    • eLearning
    Łańcuch dostaw
    • Magazyn
    • Produkcja
    • PLM
    • Zakupy
    • Konserwacja
    • Jakość
    Zasoby Ludzkie
    • Pracownicy
    • Rekrutacja
    • Urlopy
    • Ocena pracy
    • Polecenia Pracownicze
    • Flota
    Marketing
    • Marketing Społecznościowy
    • E-mail Marketing
    • SMS Marketing
    • Wydarzenia
    • Automatyzacja Marketingu
    • Ankiety
    Usługi
    • Projekt
    • Ewidencja czasu pracy
    • Usługi Terenowe
    • Helpdesk
    • Planowanie
    • Spotkania
    Produktywność
    • Dyskusje
    • Zatwierdzenia
    • IoT
    • VoIP
    • Baza wiedzy
    • WhatsApp
    Aplikacje trzecich stron Studio Odoo Odoo Cloud Platform
  • Branże
    Sprzedaż detaliczna
    • Księgarnia
    • Sklep odzieżowy
    • Sklep meblowy
    • Sklep spożywczy
    • Sklep z narzędziami
    • Sklep z zabawkami
    Żywienie i hotelarstwo
    • Bar i Pub
    • Restauracja
    • Fast Food
    • Pensjonat
    • Dystrybutor napojów
    • Hotel
    Agencja nieruchomości
    • Agencja nieruchomości
    • Biuro architektoniczne
    • Budowa
    • Zarządzanie nieruchomościami
    • Ogrodnictwo
    • Stowarzyszenie właścicieli nieruchomości
    Doradztwo
    • Biuro księgowe
    • Partner Odoo
    • Agencja marketingowa
    • Kancelaria prawna
    • Agencja rekrutacyjna
    • Audyt i certyfikacja
    Produkcja
    • Tekstylia
    • Metal
    • Meble
    • Jedzenie
    • Browar
    • Prezenty firmowe
    Zdrowie & Fitness
    • Klub sportowy
    • Salon optyczny
    • Centrum fitness
    • Praktycy Wellness
    • Apteka
    • Salon fryzjerski
    Transakcje
    • Złota rączka
    • Wsparcie Sprzętu IT
    • Systemy energii słonecznej
    • Szewc
    • Firma sprzątająca
    • Usługi HVAC
    Inne
    • Organizacja non-profit
    • Agencja Środowiskowa
    • Wynajem billboardów
    • Fotografia
    • Leasing rowerów
    • Sprzedawca oprogramowania
    Przeglądaj wszystkie branże
  • Community
    Ucz się
    • Samouczki
    • Dokumentacja
    • Certyfikacje
    • Szkolenie
    • Blog
    • Podcast
    Pomóż w nauce innym
    • Program Edukacyjny
    • Scale Up! Gra biznesowa
    • Odwiedź Odoo
    Skorzystaj z oprogramowania
    • Pobierz
    • Porównaj edycje
    • Wydania
    Współpracuj
    • Github
    • Forum
    • Wydarzenia
    • Tłumaczenia
    • Zostań partnerem
    • Usługi dla partnerów
    • Zarejestruj swoją firmę rachunkową
    Skorzystaj z usług
    • Znajdź partnera
    • Znajdź księgowego
    • Spotkaj się z doradcą
    • Usługi wdrożenia
    • Opinie klientów
    • Wsparcie
    • Aktualizacje
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Zaplanuj demo
  • Cennik
  • Pomoc

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Księgowość
  • Zapasy
  • PoS
  • Projekt
  • MRP
All apps
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Musisz się zarejestrować, aby móc wchodzić w interakcje z tą społecznością.
Wszystkie posty Osoby Odznaki
Tagi (Zobacz wszystko)
odoo accounting v14 pos v15
O tym forum
Pomoc

Native Views Not Updating After Module Upgrade in Odoo 18 on Odoo SH

Zaprenumeruj

Otrzymaj powiadomienie o aktywności w tym poście

To pytanie dostało ostrzeżenie
migrationodoo.shodoo18odoo17
2 Odpowiedzi
2631 Widoki
Awatar
José Luis Hernández Ricardo

I'm migrating a database from Odoo 17 to Odoo 18 in an Odoo SH environment, and I’ve encountered an issue: native views are not updating when I upgrade the native modules.

When I check under Technical > Views, I still see the old view definitions, and this is causing conflicts with other modules that depend on the updated views.

Has anyone experienced this issue in Odoo 18?

Is there a change in how Odoo handles native view updates that I should be aware of?

Any help or guidance would be greatly appreciated!

0
Awatar
Odrzuć
Ray Carnes (ray)

Please add details about which Views and if you are using the Upgrade Service.

José Luis Hernández Ricardo
Autor

There are several views that have a problem. But the main ones that conflict with l10n_ec_edi_pos are account.report_invoice, although I've also had a problem with web.external_layout_standard

Awatar
José Luis Hernández Ricardo
Autor Najlepsza odpowiedź

This is the error:

2025-07-26 12:51:04,574 4 ERROR test-test18-22265445 odoo.http: Exception during request handling.

Traceback (most recent call last):

File "/home/odoo/src/odoo/odoo/http.py", line 2533, in __call__

response = request._serve_db()

^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2060, in _serve_db

return self._transactioning(

^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2123, in _transactioning

return service_model.retrying(func, env=self.env)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/service/model.py", line 156, in retrying

result = func()

^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2090, in _serve_ir_http

response = self.dispatcher.dispatch(rule.endpoint, args)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2251, in dispatch

return self.request.registry['ir.http']._dispatch(endpoint)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 333, in _dispatch

result = endpoint(**request.params)

^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 754, in route_wrapper

result = endpoint(self, *args, **params_ok)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/mail/models/discuss/mail_guest.py", line 38, in wrapper

return func(self, *args, **kwargs)

^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/mail/controllers/discuss/binary.py", line 68, in content_image

return super().content_image(*args, **kwargs)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 754, in route_wrapper

result = endpoint(self, *args, **params_ok)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/web/controllers/binary.py", line 185, in content_image

stream = request.env['ir.binary']._get_image_stream_from(

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_binary.py", line 203, in _get_image_stream_from

stream = self._get_stream_from(

^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_binary.py", line 127, in _get_stream_from

stream = self._record_to_stream(record, field_name)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_binary.py", line 86, in _record_to_stream

return field_attachment._to_http_stream()

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_attachment.py", line 803, in _to_http_stream

stat = os.stat(stream.path)

^^^^^^^^^^^^^^^^^^^^

FileNotFoundError: [Errno 2] No such file or directory: '/home/odoo/data/filestore/test-test18-22265445/b1/b1da3700bf7a58ece71956b5f2d83c9d2aa1d231'

2025-07-26 12:51:06,761 4 ERROR test-test18-22265445 odoo.http: Exception during request handling.

Traceback (most recent call last):

File "<728>", line 107, in template_728

File "<728>", line 89, in template_728_content

File "<728>", line 77, in template_728_t_call_0

File "<6086>", line 5, in not_found_template

ValueError: El elemento "<xpath expr="//t[@t-set=&#39;layout_document_title&#39;]">" no se puede localizar en la vista principal


The above exception was the direct cause of the following exception:


Traceback (most recent call last):

File "/home/odoo/src/odoo/odoo/http.py", line 2533, in __call__

response = request._serve_db()

^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2060, in _serve_db

return self._transactioning(

^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2123, in _transactioning

return service_model.retrying(func, env=self.env)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/service/model.py", line 156, in retrying

result = func()

^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2090, in _serve_ir_http

response = self.dispatcher.dispatch(rule.endpoint, args)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 2338, in dispatch

result = self.request.registry['ir.http']._dispatch(endpoint)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_http.py", line 333, in _dispatch

result = endpoint(**request.params)

^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/http.py", line 754, in route_wrapper

result = endpoint(self, *args, **params_ok)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/web/controllers/dataset.py", line 36, in call_kw

return call_kw(request.env[model], method, args, kwargs)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/api.py", line 533, in call_kw

result = getattr(recs, name)(*args, **kwargs)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/pos_sale/models/pos_order.py", line 51, in sync_from_ui

data = super().sync_from_ui(orders)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/enterprise/pos_preparation_display/models/pos_order.py", line 11, in sync_from_ui

data = super().sync_from_ui(orders)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/point_of_sale/models/pos_order.py", line 1050, in sync_from_ui

order_ids.append(self._process_order(order, False))

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/pos_event/models/pos_order.py", line 45, in _process_order

res = super()._process_order(order, existing_order)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/point_of_sale/models/pos_order.py", line 119, in _process_order

return pos_order._process_saved_order(draft)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/point_of_sale/models/pos_order.py", line 157, in _process_saved_order

self._generate_pos_order_invoice()

File "/home/odoo/src/odoo/addons/point_of_sale/models/pos_order.py", line 974, in _generate_pos_order_invoice

new_move.with_context(skip_invoice_sync=True)._generate_and_send()

File "/home/odoo/src/odoo/addons/account/models/account_move.py", line 5826, in _generate_and_send

wizard.action_send_and_print(allow_fallback_pdf=allow_fallback_pdf)

File "/home/odoo/src/odoo/addons/account/wizard/account_move_send_wizard.py", line 294, in action_send_and_print

attachments = self._generate_and_send_invoices(

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/account/models/account_move_send.py", line 716, in _generate_and_send_invoices

self._generate_invoice_documents(moves_data, allow_fallback_pdf=allow_fallback_pdf)

File "/home/odoo/src/odoo/addons/account/models/account_move_send.py", line 641, in _generate_invoice_documents

self._prepare_invoice_pdf_report(batch)

File "/home/odoo/src/odoo/addons/account/models/account_move_send.py", line 354, in _prepare_invoice_pdf_report

content, report_type = self.env['ir.actions.report'].with_company(company_id)._pre_render_qweb_pdf(pdf_report.report_name, res_ids=ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/enterprise/l10n_ec_edi/models/ir_actions_report.py", line 22, in _pre_render_qweb_pdf

return super()._pre_render_qweb_pdf(report_ref, res_ids=res_ids, data=data)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/account/models/ir_actions_report.py", line 75, in _pre_render_qweb_pdf

return super()._pre_render_qweb_pdf(report_ref, res_ids=res_ids, data=data)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_actions_report.py", line 1006, in _pre_render_qweb_pdf

return self._render_qweb_pdf_prepare_streams(report_ref, data, res_ids=res_ids), 'pdf'

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/sale_pdf_quote_builder/models/ir_actions_report.py", line 17, in _render_qweb_pdf_prepare_streams

result = super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids=res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/enterprise/account_followup/models/ir_actions_report.py", line 12, in _render_qweb_pdf_prepare_streams

res = super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/purchase/models/ir_actions_report.py", line 12, in _render_qweb_pdf_prepare_streams

collected_streams = super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids=res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/account_edi_ubl_cii/models/ir_actions_report.py", line 11, in _render_qweb_pdf_prepare_streams

collected_streams = super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/account_edi/models/ir_actions_report.py", line 14, in _render_qweb_pdf_prepare_streams

collected_streams = super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids=res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/account/models/ir_actions_report.py", line 22, in _render_qweb_pdf_prepare_streams

return super()._render_qweb_pdf_prepare_streams(report_ref, data, res_ids=res_ids)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_actions_report.py", line 856, in _render_qweb_pdf_prepare_streams

html = self.with_context(**additional_context)._render_qweb_html(report_ref, all_res_ids_wo_stream, data=data)[0]

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/enterprise/web_studio/models/ir_actions_report.py", line 24, in _render_qweb_html

return super(IrActionsReport, self)._render_qweb_html(report_ref, docids, data)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_actions_report.py", line 1094, in _render_qweb_html

return self._render_template(report.report_name, data), 'html'

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_actions_report.py", line 772, in _render_template

return view_obj._render_template(template, values).encode()

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/enterprise/web_studio/models/ir_ui_view.py", line 1332, in _render_template

return super(View, self)._render_template(template, values)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/addons/website/models/ir_ui_view.py", line 453, in _render_template

return super()._render_template(template, values=values)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_ui_view.py", line 2199, in _render_template

return self.env['ir.qweb']._render(template, values)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/tools/profiler.py", line 313, in _tracked_method_render

return method_render(self, template, values, **options)

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/home/odoo/src/odoo/odoo/addons/base/models/ir_qweb.py", line 606, in _render

result = ''.join(rendering)

^^^^^^^^^^^^^^^^^^

File "<729>", line 38, in template_729

File "<729>", line 27, in template_729_content

File "<728>", line 115, in template_728

odoo.addons.base.models.ir_qweb.QWebException: Error while render the template

ValueError: El elemento "<xpath expr="//t[@t-set=&#39;layout_document_title&#39;]">" no se puede localizar en la vista principal

Template: account.report_invoice

Path: /t/t/t/t[3]

Node: <t t-call="l10n_ec_edi.report_invoice_document" t-inner-content="True" t-options-lang="lang"/>


Solution

The problem was with some developments made in Odoo Studio.

0
Awatar
Odrzuć
Awatar
Christoph Farnleitner
Najlepsza odpowiedź

Enable the Developer Mode (https://www.odoo.com/documentation/18.0/applications/general/developer_mode.html), then go to Settings -> Technical -> External Identifiers and search for the view in question. The view you are referring to most likely is having its Non Updatable flag set to true, thus the Upgrade of apps does not actually reset that view.

This is just an example:

0
Awatar
Odrzuć
José Luis Hernández Ricardo
Autor

Thanks for sharing.

I looked for views and they're unchecked, so that's not the problem.

Podoba Ci się ta dyskusja? Dołącz do niej!

Stwórz konto dzisiaj, aby cieszyć się ekskluzywnymi funkcjami i wchodzić w interakcje z naszą wspaniałą społecznością!

Zarejestruj się
Powiązane posty Odpowiedzi Widoki Czynność
How did I migrate custom module from odoo 17 to odoo 18 to replace tree view to list view Rozwiązane
migration odoo18
Awatar
1
wrz 25
5409
V18 migration in odoo.sh
migration odoo.sh
Awatar
Awatar
1
sty 25
2078
migration from odoo16 to 17
migration odoo17 odoo16
Awatar
Awatar
1
lis 25
1994
Migrating web_gantt from 17 to 18 to use it in hr_work_entry_contract_entreprise
view odoo18 odoo17
Awatar
0
lis 24
2232
Migration odoo 16 enterprise to 17
migration odoo17 odoo16
Awatar
Awatar
1
lis 24
2983
Społeczność
  • Samouczki
  • Dokumentacja
  • Forum
Open Source
  • Pobierz
  • Github
  • Runbot
  • Tłumaczenia
Usługi
  • Hosting Odoo.sh
  • Wsparcie
  • Aktualizacja
  • Indywidualne rozwiązania
  • Edukacja
  • Znajdź księgowego
  • Znajdź partnera
  • Zostań partnerem
O nas
  • Nasza firma
  • Zasoby marki
  • Skontaktuj się z nami
  • Oferty pracy
  • Wydarzenia
  • Podcast
  • Blog
  • Klienci
  • Informacje prawne • Prywatność
  • Bezpieczeństwo Odoo
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo to pakiet aplikacji biznesowych typu open source, które zaspokoją wszystkie potrzeby Twojej firmy: CRM, eCommerce, księgowość, inwentaryzacja, punkt sprzedaży, zarządzanie projektami itp.

Unikalną wartością Odoo jest to, że jest jednocześnie bardzo łatwe w użyciu i w pełni zintegrowane.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now