Odoo Help

Welcome!

This community is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.

1

why xml code causing Unfinished literal error?

By
Hesham ELMAHDY
on 2/23/15, 3:50 PM 1,654 views

I added a field `partner_code` to `res.partner`. I am now trying to search customer or supplier by the new field when creating a draft invoice.

this is the xml code which is causing an error:

`<?xml version="1.0" encoding="UTF-8"?> <!--suppress XmlUnboundNsPrefix --> <openerp> <data> <record id="odootec_invoice_supplier_form" model="ir.ui.view"> <field name="name">account.invoice.supplier.form</field> <field name="model">account.invoice</field> <field name="inherit_id" ref="account.invoice_supplier_form"/> <field name="arch" type="xml"> <xpath expr="//field[@string='partner_id]" position="attributes"> <attribute name="attrs">{'filter_domain':['|','|',('display_name','ilike',self),('partner_code','ilike',self),('ref','=',self),('email','ilike',self)]}</attribute> <!--<attribute name="filter_domain">['|','|',('display_name','ilike',self),('partner_code','ilike',self),('ref','=',self),('email','ilike',self)]</attribute>--> </xpath> </field> </record> </data> </openerp> `

this is the error:

`

2015-02-23 20:41:50,534 19513 ERROR test werkzeug: Error on request:
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/serving.py", line 177, in run_wsgi
    execute(self.server.app)
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/serving.py", line 165, in execute
    application_iter = app(environ, start_response)
  File "/home/hesham/odoo/openerp/service/server.py", line 281, in app
    return self.app(e, s)
  File "/home/hesham/odoo/openerp/service/wsgi_server.py", line 216, in application
    return application_unproxied(environ, start_response)
  File "/home/hesham/odoo/openerp/service/wsgi_server.py", line 202, in application_unproxied
    result = handler(environ, start_response)
  File "/home/hesham/odoo/openerp/http.py", line 1236, in __call__
    return self.dispatch(environ, start_response)
  File "/home/hesham/odoo/openerp/http.py", line 1210, in __call__
    return self.app(environ, start_wrapped)
  File "/usr/local/lib/python2.7/dist-packages/werkzeug/wsgi.py", line 588, in __call__
    return self.app(environ, start_response)
  File "/home/hesham/odoo/openerp/http.py", line 1368, in dispatch
    ir_http = request.registry['ir.http']
  File "/home/hesham/odoo/openerp/http.py", line 330, in registry
    return openerp.modules.registry.RegistryManager.get(self.db) if self.db else None
  File "/home/hesham/odoo/openerp/modules/registry.py", line 310, in get
    update_module)
  File "/home/hesham/odoo/openerp/modules/registry.py", line 341, in new
    openerp.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/home/hesham/odoo/openerp/modules/loading.py", line 354, in load_modules
    force, status, report, loaded_modules, update_module)
  File "/home/hesham/odoo/openerp/modules/loading.py", line 263, in load_marked_modules
    loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
  File "/home/hesham/odoo/openerp/modules/loading.py", line 182, in load_module_graph
    _load_data(cr, module_name, idref, mode, kind='data')
  File "/home/hesham/odoo/openerp/modules/loading.py", line 118, in _load_data
    tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report)
  File "/home/hesham/odoo/openerp/tools/convert.py", line 901, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/home/hesham/odoo/openerp/tools/convert.py", line 987, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/home/hesham/odoo/openerp/tools/convert.py", line 853, in parse
    self._tags[rec.tag](self.cr, rec, n, mode=mode)
  File "/home/hesham/odoo/openerp/tools/convert.py", line 763, in _tag_record
    id = self.pool['ir.model.data']._update(cr, self.uid, rec_model, self.module, res, rec_id or False, not self.isnoupdate(data_node), noupdate=self.isnoupdate(data_node), mode=self.mode, context=rec_context )
  File "/home/hesham/odoo/openerp/api.py", line 237, in wrapper
    return old_api(self, *args, **kwargs)
  File "/home/hesham/odoo/openerp/addons/base/ir/ir_model.py", line 1066, in _update
    res_id = model_obj.create(cr, uid, values, context=context)
  File "/home/hesham/odoo/openerp/api.py", line 237, in wrapper
    return old_api(self, *args, **kwargs)
  File "/home/hesham/odoo/openerp/addons/base/ir/ir_ui_view.py", line 264, in create
    context=context)
  File "/home/hesham/odoo/openerp/api.py", line 237, in wrapper
    return old_api(self, *args, **kwargs)
  File "/home/hesham/odoo/openerp/api.py", line 332, in old_api
    result = method(recs, *args, **kwargs)
  File "/home/hesham/odoo/openerp/models.py", line 3999, in create
    record = self.browse(self._create(old_vals))
  File "/home/hesham/odoo/openerp/api.py", line 235, in wrapper
    return new_api(self, *args, **kwargs)
  File "/home/hesham/odoo/openerp/api.py", line 464, in new_api
    result = method(self._model, cr, uid, *args, **kwargs)
  File "/home/hesham/odoo/openerp/models.py", line 4190, in _create
    recs._validate_fields(vals)
  File "/home/hesham/odoo/openerp/api.py", line 235, in wrapper
    return new_api(self, *args, **kwargs)
  File "/home/hesham/odoo/openerp/models.py", line 1276, in _validate_fields
    raise ValidationError('\n'.join(errors))
ParseError: "ValidateError
Field(s) `arch` failed against a constraint: Invalid view definition

Error details:
Unfinished literal" while parsing /home/hesham/odootec-projects/odootecdev/odootec_extensions/odootec_account_invoice_view.xml:5, near
<record id="odootec_invoice_supplier_form" model="ir.ui.view">
            <field name="name">account.invoice.supplier.form</field>
            <field name="model">account.invoice</field>
            <field name="inherit_id" ref="account.invoice_supplier_form"/>
            <field name="arch" type="xml">
                <xpath expr="//field[@string='partner_id]" position="attributes">
                    <attribute name="attrs">{'filter_domain':['|','|',('display_name','ilike',self),('partner_code','ilike',self),('ref','=',self),('email','ilike',self)]}</attribute>
                    <!--<attribute name="filter_domain">['|','|',('display_name','ilike',self),('partner_code','ilike',self),('ref','=',self),('email','ilike',self)]</attribute>-->

                </xpath>
            </field>
        </record>

`

 

what is wrong with my xml code?

3

zbik

--zbik--
5941
| 6 4 7
Lodz, Poland
--zbik--


zbik
On 2/23/15, 4:08 PM

Unfinished literal in:

<xpath expr="//field[@string='partner_id]"   ...

should be

<xpath expr="//field[@string='partner_id']"   ...

 

Thanks a million. It will be great of you like my question as well :)

Hesham ELMAHDY
on 2/24/15, 5:34 AM

Your Answer

Please try to give a substantial answer. If you wanted to comment on the question or answer, just use the commenting tool. Please remember that you can always revise your answers - no need to answer the same question twice. Also, please don't forget to vote - it really helps to select the best questions and answers!

About This Community

This community is for professionals and enthusiasts of our products and services. Read Guidelines

Question tools

1 follower(s)

Stats

Asked: 2/23/15, 3:50 PM
Seen: 1654 times
Last updated: 3/16/15, 8:10 AM