Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami
Ricordati di dichiarare la versione di Odoo a cui riferisce la domanda
  • Pagina:
  • 1
  • 2

ARGOMENTO: [odoo 8] Ordine vendita - eliminare campo

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29067

  • giuseppeflammia
  • Avatar di giuseppeflammia
  • Offline
  • Expert Boarder
  • Messaggi: 100
  • Ringraziamenti ricevuti 1
  • Karma: 0
Ciao a tutti,

sto modificando l'interfaccia dell'ordine di vendita e sono riuscito a modificarla in parte nascondendo un campo e aggiungendone un altro.
Purtroppo mi sto scontrando con un problema: non riesco a far scomparire il campo "Template Preventivo " che si riferisce al campo in sale.order di nome template_id.
<record model="ir.ui.view" id="sale_mod2_view_order_form">
            <field name="name">sale.order.form.inherit</field>
            <field name="model">sale.order</field>
            <field name="inherit_id" ref="sale.view_order_form" />
            <field name="arch" type="xml">
                <xpath
                    expr="//field[@name='x_TIPO_ORDINE_IQ']"
                    position="before">
                    <field name="mandante"/>
                </xpath>

                <xpath
                    expr="//field[@name='pricelist_id']"
                    position="replace">
                </xpath>
                
                <xpath
                    expr="//field[@name='template_id']"
                    position="replace">
                </xpath>

            </field>
          </record>

ogni volta che aggiungo l'xpath di template_id mi viene fuori questo errore:


2017-08-02 17:10:29,566 12844 INFO sm_pro openerp.modules.loading: 1 modules loaded in 0.02s, 0 queries
2017-08-02 17:10:30,303 12844 INFO sm_pro openerp.modules.loading: loading 128 modules...
2017-08-02 17:10:33,224 12844 INFO sm_pro openerp.modules.module: module ordini_lavorazione: creating or updating database tables
2017-08-02 17:10:33,344 12844 INFO sm_pro openerp.modules.loading: loading ordini_lavorazione/views/ordine_spedizione.xml
2017-08-02 17:10:33,457 12844 ERROR sm_pro openerp.addons.base.ir.ir_ui_view: L'elemento '<xpath expr="//field[@name='template_id']">' non può esser localizzato nella vista genitore

Error context:
View `sale.order.form.inherit`
[view_id: 1893, xml_id: ordini_lavorazione.sale_mod2_view_order_form, model: sale.order, parent_id: 648]
2017-08-02 17:10:33,459 12844 ERROR sm_pro openerp.http: Exception during JSON request handling.
Traceback (most recent call last):
  File "/opt/odoo/openerp/http.py", line 539, in _handle_exception
    return super(JsonRequest, self)._handle_exception(exception)
  File "/opt/odoo/openerp/http.py", line 576, in dispatch
    result = self._call_function(**self.params)
  File "/opt/odoo/openerp/http.py", line 312, in _call_function
    return checked_call(self.db, *args, **kwargs)
  File "/opt/odoo/openerp/service/model.py", line 118, in wrapper
    return f(dbname, *args, **kwargs)
  File "/opt/odoo/openerp/http.py", line 309, in checked_call
    return self.endpoint(*a, **kw)
  File "/opt/odoo/openerp/http.py", line 805, in __call__
    return self.method(*args, **kw)
  File "/opt/odoo/openerp/http.py", line 405, in response_wrap
    response = f(*args, **kw)
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/web/controllers/main.py", line 948, in call_button
    action = self._call_kw(model, method, args, {})
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/web/controllers/main.py", line 936, in _call_kw
    return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
  File "/opt/odoo/openerp/api.py", line 268, in wrapper
    return old_api(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/base/module/module.py", line 534, in button_immediate_upgrade
    return self._button_immediate_function(cr, uid, ids, self.button_upgrade, context=context)
  File "/opt/odoo/openerp/api.py", line 268, in wrapper
    return old_api(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/base/module/module.py", line 495, in _button_immediate_function
    registry = openerp.modules.registry.RegistryManager.new(cr.dbname, update_module=True)
  File "/opt/odoo/openerp/modules/registry.py", line 370, in new
    openerp.modules.load_modules(registry._db, force_demo, status, update_module)
  File "/opt/odoo/openerp/modules/loading.py", line 351, in load_modules
    force, status, report, loaded_modules, update_module)
  File "/opt/odoo/openerp/modules/loading.py", line 255, 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/openerp/modules/loading.py", line 176, in load_module_graph
    _load_data(cr, module_name, idref, mode, kind='data')
  File "/opt/odoo/openerp/modules/loading.py", line 118, in _load_data
    tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report)
  File "/opt/odoo/openerp/tools/convert.py", line 900, in convert_file
    convert_xml_import(cr, module, fp, idref, mode, noupdate, report)
  File "/opt/odoo/openerp/tools/convert.py", line 986, in convert_xml_import
    obj.parse(doc.getroot(), mode=mode)
  File "/opt/odoo/openerp/tools/convert.py", line 852, in parse
    self._tags[rec.tag](self.cr, rec, n, mode=mode)
  File "/opt/odoo/openerp/tools/convert.py", line 762, 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 "/opt/odoo/openerp/api.py", line 268, in wrapper
    return old_api(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/base/ir/ir_model.py", line 1019, in _update
    model_obj.write(cr, uid, [res_id], values, context=context)
  File "/opt/odoo/openerp/api.py", line 268, in wrapper
    return old_api(self, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/odoo-8.0.post20160413-py2.7.egg/openerp/addons/base/ir/ir_ui_view.py", line 273, in write
    context)
  File "/opt/odoo/openerp/api.py", line 268, in wrapper
    return old_api(self, *args, **kwargs)
  File "/opt/odoo/openerp/api.py", line 399, in old_api
    result = method(recs, *args, **kwargs)
  File "/opt/odoo/openerp/models.py", line 3788, in write
    self._write(old_vals)
  File "/opt/odoo/openerp/api.py", line 266, in wrapper
    return new_api(self, *args, **kwargs)
  File "/opt/odoo/openerp/api.py", line 592, in new_api
    result = method(self._model, cr, uid, self.ids, *args, **old_kwargs)
  File "/opt/odoo/openerp/models.py", line 3960, in _write
    recs._validate_fields(vals)
  File "/opt/odoo/openerp/api.py", line 266, in wrapper
    return new_api(self, *args, **kwargs)
  File "/opt/odoo/openerp/models.py", line 1271, in _validate_fields
    raise ValidationError('\n'.join(errors))
ParseError: "ValidateError
Field(s) `arch` failed against a constraint: Invalid view definition

Dettagli dell'Errore:
L'elemento '<xpath expr="//field[@name='template_id']">' non può esser localizzato nella vista genitore

Error context:
View `sale.order.form.inherit`
[view_id: 1893, xml_id: ordini_lavorazione.sale_mod2_view_order_form, model: sale.order, parent_id: 648]" while parsing /home/odoo/custom/addons/ordini_lavorazione/views/ordine_spedizione.xml:32, near
<record model="ir.ui.view" id="sale_mod2_view_order_form">
            <field name="name">sale.order.form.inherit</field>
            <field name="model">sale.order</field>
            <field name="inherit_id" ref="sale.view_order_form"/>
            <field name="arch" type="xml">
                <data><xpath expr="//field[@name='x_TIPO_ORDINE_IQ']" position="before">
                    <field name="mandante"/>
                </xpath>

                <xpath expr="//field[@name='pricelist_id']" position="replace">
                </xpath>
                
                <xpath expr="//field[@name='template_id']" position="replace">
                </xpath>

            </data></field>
          </record>
2017-08-02 17:10:33,470 12844 INFO sm_pro werkzeug: 127.0.0.1 - - [02/Aug/2017 17:10:33] "POST /web/dataset/call_button HTTP/1.1" 200 -

In allegato anche la schermata da prendo il nome di "Template preventivo"
Allegati:
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29096

  • giuseppeflammia
  • Avatar di giuseppeflammia
  • Offline
  • Expert Boarder
  • Messaggi: 100
  • Ringraziamenti ricevuti 1
  • Karma: 0
up
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29099

  • gigidn
  • Avatar di gigidn
  • Offline
  • Platinum Boarder
  • Messaggi: 1925
  • Ringraziamenti ricevuti 446
  • Karma: 22
Eliminare un campo non è mai cosa buona, se altre interfacce estendono questa e si riferiscono a questo con un "after" ad esempio ottieni l'errore che stai sperimentando.

Se vuole "eliminarli" il metodo corretto è mettere l'attributo "invisible" posto ad "1". In questo modo non rompi eventuali estensioni che si riferiscono a quel campo.
@KTec
www.ktec.it
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29122

  • giuseppeflammia
  • Avatar di giuseppeflammia
  • Offline
  • Expert Boarder
  • Messaggi: 100
  • Ringraziamenti ricevuti 1
  • Karma: 0

Si giusto. ho provato anche con l'approccio da te indicato ma continuo a non risolvere il problema.
Cmq analizzando del debug vista: io ho questa struttur in allegato.



come faccio a nagivare attraverso i diversi livelli della struttura ?
ho fatto delle ricerche su internet ma non mi è chiaro come fare a posizionarmi al loro interno.
Ultima modifica: 1 Anno 6 Mesi fa da giuseppeflammia. Motivo: mancava l allegato
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29123

  • enlightx
  • Avatar di enlightx
  • Online
  • Platinum Boarder
  • Messaggi: 6064
  • Ringraziamenti ricevuti 638
  • Karma: 85
Cosa intendi per "navigare"
intendi vedere i dettagli del livello?
se si, devi cliccare sull'icona a forma di foglio a dx
Davide Corio
Odoo Solution Architect
email: Questo indirizzo email è protetto dagli spambots. È necessario abilitare JavaScript per vederlo.
web: www.davidecorio.com
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

[odoo 8] Ordine vendita - eliminare campo 1 Anno 6 Mesi fa #29124

  • giuseppeflammia
  • Avatar di giuseppeflammia
  • Offline
  • Expert Boarder
  • Messaggi: 100
  • Ringraziamenti ricevuti 1
  • Karma: 0
Scusami sono stato poco chiaro e sono stato frainteso: mi riferisco a questo:
<record model="ir.ui.view" id="sale_order_form_quote_inherit">
		    <field name="name">sale.order.form.payment.inherit</field>
		    <field name="model">sale.order</field>
		    <field name="inherit_id" ref="website_quote.sale_order_form_quote"/>
		    <field name="arch" type="xml">
		        <xpath expr="//field[@name='template_id']" position="attributes">
		            <attribute name="invisible">1</attribute>
		        </xpath>
		    </field>     
		</record>

expr="//field[@name='template_id']" questo è un chiaro riferimanento al fatto che si possano navigare le strutture inserite nell'xml del file. Ma come si esegue questo cammino attraverso le strutture scrivendolo sotto forma di codice ?

nell'immagine precedente template_id è un campo del field client_order_ref, ma se uso un pezzo di codice come quello sopra...cmq non funziona.

Non riesco a capire come attraversare la struttura di una form, visto che per alcuni campi basta fare"replace" e per altri vengono fuori errori che sono poco comprensibili: quello che è certo è che essendoci viste ereditate bisogna scovare tra le tante viste se tale vista è figlia di qualcuno e poi è possibile effettuare delle operazioni.

Sta diventando + difficile del previsto lavorare a questa parte di odoo!!! :starwars:
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
  • Pagina:
  • 1
  • 2
Tempo creazione pagina: 0.144 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam