Saransh Sharma
Saransh Sharma

Reputation: 308

How to change the base fields label in openerp 6.1

researchorial but indeed i have done all the google around what i want o achieve in openerp that how to change those fields label ,i don't wanna play with fields and i know how to create new fields but what about base fields i am not able to edit them they throw some error that you cannot change the base fields from here so objective is clear that those label like Company, SSNID in hr module i want them changed according to them nothing else!!

please do not post links of already same question cause they had not been answered !!

Thank You

Upvotes: 0

Views: 3282

Answers (2)

Anil Kesariya
Anil Kesariya

Reputation: 1194

Create New Hr employee Inherited view By this way.

<record model="ir.ui.view" id="updated_hr_form_view">
<field name="name">updated.hr.form</field>
<field name="model">hr.employee</field>
<field name="type">form</field>
<field name="inherit_id" ref="hr.view_employee_form" />
    <xpath expr="//form/notebook/page[@string='Personal Information'/group/field[@name='ssnid']]" position="replace">
        <field name="ssnid" string="Your New Label"/>
        </xpath>
</field>
</record>

Upvotes: 1

OmaL
OmaL

Reputation: 5044

You can change the label of a field in two ways.

1. Python code

Inherit the model where that field is defined, then inside _columns add the same field name with new label. For example, if you want to change SSNID to Employee ID, assume that in the base module the field is defined as 'ssnid' and the field is in hr.employee model.

from osv import osv, fields
class hr_employee(osv.osv):
    _inherit = 'hr.employee'
    _columns = {'ssnid': fields.integer('Employee ID')
    }
hr_employee()

2. XML code(change the view)

Inherit your view and add the attribute for the field 'ssnid'. For example in base module the field view is like <field name="ssnid"/> .To change it inherit its corresponding form and tree view and you can change the field by using position="attribute" and also position="replace". Add the attribute string="Employee ID".

<field name="ssnid" position="replace"> 
    <field name="ssnid" string="Employee ID"/>
</field>

Upvotes: 4

Related Questions