Benvenuto, Ospite
Nome utente: Password: Ricordami
  • Pagina:
  • 1
  • 2
  • 3

ARGOMENTO: Aggiunta campo in "Partner"

Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6592

Ciao a tutti, ho provato ad implementare un modulo che modificasse la view partner per permettere di aggiungere un secondo numero di telefono oltre a quello predefinito. Sto utilizzando Ubuntu server 11.04 e OpenERP 6.0.2. Il modulo viene installato senza problemi, ma quando clicco su un qualsiasi contatto viene generato un messaggio di errore: "Can't find field 'phone2' in the following view parts composing the view of object model 'res.partner':
* view.partner.form.add.text.field

Either you wrongly customized this view, or some modules bringing those views are not compatible with your current data model". Il modulo che ho scritto è:

__init__.py :

import code


__openerp__.py


{
'name' : 'InheritedObject',
'version' : '1.0',
'description' : """Prova""",
'depends' : ,
'init_xml' : [],
'update_xml' : ,
'demo_xml' : [],
'active' : False,
'installable' : True,
}


code.py

class res_partner_add_text_field(osv.osv):

_name = 'res.partner'
_inherit = 'res.partner'

_columns = {
'phone2': fields.char('phone2', size=64),

}

res_partner_add_text_field()


view.xml

<?xml version="1.0" encoding="UTF-8"?>
<openerp>
<data>

<record model="ir.ui.view" id="view_partner_form_add_text_field">
<field name="name">view.partner.form.add.text.field</field>
<field name="model">res.partner</field>

<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">

<xpath
expr="//field[@name='address']/form//group/field[@name='phone']"
position="after">
<field name="phone2"/>
</xpath>

</field>
</record>
</data>
</openerp>


Come potrei fare per risolvere questo problema? Grazie in anticipo per l'aiuto!
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6593

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • OFFLINE
  • Platinum Boarder
  • Messaggi: 1029
  • Ringraziamenti ricevuti 4
  • Karma: 21
hai riavviato il server prima di fare l'aggiornamento?
(quando modifichi i file py va sempre fatto)
Dopo il riavvio devi fare anche l'aggiornamento di programmazione, sembra che la vista abbia preso il campo nuovo ma non l'oggetto nel database
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6594

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • OFFLINE
  • Platinum Boarder
  • Messaggi: 1029
  • Ringraziamenti ricevuti 4
  • Karma: 21
scusa vedo ora una cosa: il campo l'hai aggiunto a res.partner, dal form sembra che lo cerchi in res.partner.address
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6607

Sì, vorrei aggiungere il campo nella parte "address" della view partner che, mi pare di aver capito, ha il nome res.partner.address. Quindi dovrei cambiare _name e _inherit nel file code.py e <field name="model"> nel file view.xml in res.partner.address? Se cambio il modello nella view devo anche cambiare l'xpath che indica dove voglio aggiungere il campo? Grazie!
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6610

  • archetipo
  • Avatar di archetipo
  • OFFLINE
  • Gold Boarder
  • Messaggi: 253
  • Karma: 5
ma se vuoi ereditare un model devi chiamarlo nello stesso modo, e poi il campo name non serve poichè viene ereditato.

poi per le view leggi da qui

doc.openerp.com/memento/OpenERP_Technica..._v0.6.5_A4_draft.pdf

pagina 12
Ultima modifica: 1 Anno 2 Mesi fa da archetipo.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Re:Aggiunta campo in "Partner" 1 Anno 2 Mesi fa #6611

  • NicoTheBrush
  • Avatar di NicoTheBrush
  • OFFLINE
  • Platinum Boarder
  • Messaggi: 1029
  • Ringraziamenti ricevuti 4
  • Karma: 21
devi cambiare solo la parte in py come hai scritto, per la parte xml credo sia corretta perchè la videata è appoggiata all'oggetto res.partner poi arrivi nel campo o2m address e li raggiungi l'oggetto res.partner.address e il campo phone dove aggiungi il tuo campo phone2

expr="//field[@name='address']/form//group/field[@name='phone']"

la parte dopo address comprende infatti campi di res.partner.address
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
  • Pagina:
  • 1
  • 2
  • 3
Tempo creazione pagina: 0.303 secondi
Protected by R Antispam