Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Estate Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help

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

  • CRM
  • e-Commerce
  • Accounting
  • Inventory
  • PoS
  • Project
  • MRP
All apps
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Installation module account_payment_partner, Error "cannot be located in parent view

Subscribe

Get notified when there's activity on this post

This question has been flagged
installationmodulesodoov11
2 Replies
4034 Views
Avatar
Christian Meyer

I'm trying to install the module account_payment_partner and I receive the error:

ValueError: Element '<xpath expr="//p[@t-if='o.payment_term_id']">' cannot be located in parent view

What can I do to get rid of the error and be able to install the module?

This is the complete error output:

Fehler:
Odoo Server Error

Traceback (most recent call last):
  File "/opt/odoo/odoo11/odoo/models.py", line 982, in _validate_fields
    check(self)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 330, in _check_xml
    view_def = view.read_combined(['arch'])
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 714, in read_combined
    arch = self.apply_view_inheritance(arch_tree, root.id, self.model)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 663, in apply_view_inheritance
    source = self.apply_inheritance_specs(source, specs_tree, view_id)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 641, in apply_inheritance_specs
    self.raise_view_error(_("Element '%s' cannot be located in parent view") % tag, inherit_id)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 503, in raise_view_error
    raise ValueError(message)
ValueError: Element '<xpath expr="//p[@t-if='o.payment_term_id']">' cannot be located in parent view

Error context:
View `report_invoice_payment_mode`
[view_id: 1088, xml_id: n/a, model: n/a, parent_id: 617]

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 741, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 719, in _tag_template
    return self._tag_record(record, data_node)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 651, 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/odoo11/odoo/addons/base/ir/ir_model.py", line 1469, in _update
    record = record.create(values)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 398, in create
    return super(View, self).create(self._compute_defaults(values))
  File "/opt/odoo/odoo11/odoo/models.py", line 3315, in create
    self._fields[key].determine_inverse(record)
  File "/opt/odoo/odoo11/odoo/fields.py", line 1070, in determine_inverse
    getattr(records, self.inverse)()
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 266, in _inverse_arch
    view.write(data)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 414, in write
    return super(View, self).write(self._compute_defaults(vals))
  File "/opt/odoo/odoo11/odoo/models.py", line 3024, in write
    self._write(old_vals)
  File "/opt/odoo/odoo11/odoo/models.py", line 3190, in _write
    self._validate_fields(vals)
  File "/opt/odoo/odoo11/odoo/models.py", line 986, in _validate_fields
    raise ValidationError("%s\n\n%s" % (_("Error while validating constraint"), tools.ustr(e)))
odoo.exceptions.ValidationError: ('Error while validating constraint\n\nElement \'<xpath expr="//p[@t-if=\'o.payment_term_id\']">\' cannot be located in parent view\n\nError context:\nView `report_invoice_payment_mode`\n[view_id: 1088, xml_id: n/a, model: n/a, parent_id: 617]', None)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/odoo/odoo11/odoo/http.py", line 647, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/opt/odoo/odoo11/odoo/http.py", line 307, in _handle_exception
    raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
  File "/opt/odoo/odoo11/odoo/tools/pycompat.py", line 87, in reraise
    raise value
  File "/opt/odoo/odoo11/odoo/http.py", line 689, in dispatch
    result = self._call_function(**self.params)
  File "/opt/odoo/odoo11/odoo/http.py", line 339, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo/odoo11/odoo/service/model.py", line 97, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo/odoo11/odoo/http.py", line 332, in checked_call
    result = self.endpoint(*a, **kw)
  File "/opt/odoo/odoo11/odoo/http.py", line 933, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo/odoo11/odoo/http.py", line 512, in response_wrap
    response = f(*args, **kw)
  File "/opt/odoo/odoo11/addons/web/controllers/main.py", line 934, in call_button
    action = self._call_kw(model, method, args, {})
  File "/opt/odoo/odoo11/addons/web/controllers/main.py", line 922, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "/opt/odoo/odoo11/odoo/api.py", line 689, in call_kw
    return call_kw_multi(method, model, args, kwargs)
  File "/opt/odoo/odoo11/odoo/api.py", line 680, in call_kw_multi
    result = method(recs, *args, **kwargs)
  File "<decorator-gen-44>", line 2, in button_immediate_install
  File "/opt/odoo/odoo11/odoo/addons/base/module/module.py", line 71, in check_and_log
    return method(self, *args, **kwargs)
  File "/opt/odoo/odoo11/odoo/addons/base/module/module.py", line 448, in button_immediate_install
    return self._button_immediate_function(type(self).button_install)
  File "/opt/odoo/odoo11/odoo/addons/base/module/module.py", line 541, in _button_immediate_function
    modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "/opt/odoo/odoo11/odoo/modules/registry.py", line 85, in new
    odoo.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/opt/odoo/odoo11/odoo/modules/loading.py", line 343, in load_modules
    loaded_modules, update_module)
  File "/opt/odoo/odoo11/odoo/modules/loading.py", line 242, 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/odoo11/odoo/modules/loading.py", line 156, in load_module_graph
    _load_data(cr, module_name, idref, mode, kind='data')
  File "/opt/odoo/odoo11/odoo/modules/loading.py", line 94, in _load_data
    tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 788, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 849, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 748, in parse
    exc_info[2]
  File "/opt/odoo/odoo11/odoo/tools/pycompat.py", line 86, in reraise
    raise value.with_traceback(tb)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 741, in parse
    self._tags[rec.tag](rec, de, mode=mode)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 719, in _tag_template
    return self._tag_record(record, data_node)
  File "/opt/odoo/odoo11/odoo/tools/convert.py", line 651, 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/odoo11/odoo/addons/base/ir/ir_model.py", line 1469, in _update
    record = record.create(values)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 398, in create
    return super(View, self).create(self._compute_defaults(values))
  File "/opt/odoo/odoo11/odoo/models.py", line 3315, in create
    self._fields[key].determine_inverse(record)
  File "/opt/odoo/odoo11/odoo/fields.py", line 1070, in determine_inverse
    getattr(records, self.inverse)()
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 266, in _inverse_arch
    view.write(data)
  File "/opt/odoo/odoo11/odoo/addons/base/ir/ir_ui_view.py", line 414, in write
    return super(View, self).write(self._compute_defaults(vals))
  File "/opt/odoo/odoo11/odoo/models.py", line 3024, in write
    self._write(old_vals)
  File "/opt/odoo/odoo11/odoo/models.py", line 3190, in _write
    self._validate_fields(vals)
  File "/opt/odoo/odoo11/odoo/models.py", line 986, in _validate_fields
    raise ValidationError("%s\n\n%s" % (_("Error while validating constraint"), tools.ustr(e)))
odoo.tools.convert.ParseError: "Error while validating constraint

Element '<xpath expr="//p[@t-if='o.payment_term_id']">' cannot be located in parent view

Error context:
View `report_invoice_payment_mode`
[view_id: 1088, xml_id: n/a, model: n/a, parent_id: 617]
None" while parsing None:4, near
<data inherit_id="account.report_invoice_document">
        <xpath expr="//p[@t-if='o.payment_term_id']" position="after">
            <p t-if="o.payment_mode_id.note">
                <strong>Payment Mode:</strong>
                <span t-field="o.payment_mode_id.note"/>
            </p>
            <t t-if="o.payment_mode_id and o.payment_mode_id.show_bank_account != 'no'">
                <p t-foreach="o.partner_banks_to_show()" t-as="partner_bank">
                    <strong>Bank Account:</strong>
                    <t t-if="partner_bank.bank_id">
                        <t t-esc="partner_bank.bank_id.name + ('' if not partner_bank.bank_id.bic else ' (' + partner_bank.bank_id.bic + ')')"/>
                    </t>
                    <t t-if="o.payment_mode_id.show_bank_account == 'full'">
                        <span t-field="partner_bank.acc_number"/>
                    </t>
                    <t t-elif="o.payment_mode_id.show_bank_account == 'first'">
                        <span t-esc="partner_bank.acc_number[:o.payment_mode_id.show_bank_account_chars] + '*' * (len(partner_bank.acc_number) - o.payment_mode_id.show_bank_account_chars)"/>
                    </t>
                    <t t-elif="o.payment_mode_id.show_bank_account == 'last'">
                        <span t-esc="'*' * (len(partner_bank.acc_number) - o.payment_mode_id.show_bank_account_chars) + partner_bank.acc_number[-o.payment_mode_id.show_bank_account_chars:]"/>
                    </t>
                </p>
            </t>
        </xpath>
    </data>


0
Avatar
Discard
Avatar
Christian Meyer
Author Best Answer

Thanks for the answer.

I tried to change the code line you mentioned, but it does not change anything. Still get the error and cannot install the module.

0
Avatar
Discard
Avatar
LUBA Yangala Vincent
Best Answer

Hi,

I don't know whether this is still maintained, but I would suggest you raise an issue in https://github.com/OCA/bank-payment/.

The inheritance :

 <xpath expr="//p[@t-if='o.payment_term_id']" position="after">

Should rather be

 <xpath expr="//p[@t-if='o.invoice_payment_term_id']" position="after">

Unfortunately I cannot work on this right now, or I would have proposed a fix.


Regards


0
Avatar
Discard
Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
PyPdf2 module not found Solved
installation odoov11
Avatar
Avatar
Avatar
Avatar
Avatar
9
Jul 25
119518
Odoo ester module taking too long to be downloaded
installation modules
Avatar
Avatar
1
Mar 24
2257
I created a new module in pycharm and when i try to install it from odoo i get this error:
installation modules
Avatar
Avatar
2
Jul 20
4982
Odoo custom module installation issue
installation modules
Avatar
Avatar
1
Jan 20
3545
Creating module problem Solved
installation modules
Avatar
Avatar
1
Dec 19
3126
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة 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 is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

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