Hello,
(I use ODOO v10)
I am getting an error while trying to add custom fields into hr.employee model. Below is the code -
My XML file -
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="employee_extn" model="ir.ui.view">
<field name="name">employee.extn</field>
<field name="model">hr.employee</field>
<field name="inherit_id" ref="hr.view_employee_form"/>
<field name="arch" type="xml">
<xpath expr="//form/sheet/notebook/page[2]/group[1]/group[1]/field[@name='identification_id']" position="replace">
<label for="identification_id" string="Aadhaar Number"/>
</xpath>
<xpath expr="//form/sheet/notebook/page[2]/group[1]/group[2]/field[@name='address_home_id']" position="after">
<field name="address_perm_id"/>
</xpath>
<xpath expr="//form/sheet/notebook/page[2]/group[1]/group[4]/field[@name='birthday']" position="after">
<field name="wedding_date"/>
</xpath>
</field>
</record>
</data>
</odoo>
My .py file -
from odoo import models, fields, api, _
class EmpExtension{models.Model):
_name = "hr.employee"
_inherit = "hr.employee"
address_perm_id = fields.Many2one("res.partner", string="Permanent Address", store=True, help="Select or Enter the Permanent Address of employee")
contract_type = fields.Selection([("Regular", "Daily Wager")], string="Contract Type", store=True, help="Is this employee a Regular employee or contracted Daily Wager?")
wedding_date = fields.Date(string="Wedding Date", store=True, help="Enter wedding date of employee")
joining_date = fields.Date(string="Date of Joining", store=True, help="Enter date on which employee joined this organization.")
joining_desig = fields.Char(string="Joining Designation", store=True, help="Enter Joining Designation of this employee.")
joining_salary = fields.Float(string="Joining Salary", required=True, store=True, help="Enter the consolidated salary paid / offered to employee at the time of joining the organization.")
current_salary = fields.Float(string="Current Salary", required=True, store=True, help="Enter the current consolidated salary paid to employee.")
attendance_type = fields.Char(string="Attendance Type", required=True, store=True, help="Choose how the attendance of this employee will be recorded. It could be Biometric, Card Swipe or Manual.")
I get error as below -
Traceback (most recent call last): File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 640, in _handle_exception File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 677, in dispatch File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 333, in _call_function File "C:\Program Files (x86)\Odoo 10.0\server\odoo\service\model.py", line 101, in wrapper File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 326, in checked_call File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 935, in __call__ File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 506, in response_wrap File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\web\controllers\main.py", line 889, in call_button File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\web\controllers\main.py", line 877, in _call_kw File "C:\Program Files (x86)\Odoo 10.0\server\odoo\api.py", line 689, in call_kw File "C:\Program Files (x86)\Odoo 10.0\server\odoo\api.py", line 680, in call_kw_multi File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\module\module.py", line 411, in button_immediate_install File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\module\module.py", line 485, in _button_immediate_function File "C:\Program Files (x86)\Odoo 10.0\server\odoo\modules\registry.py", line 82, in new File "C:\Program Files (x86)\Odoo 10.0\server\odoo\modules\loading.py", line 339, in load_modules File "C:\Program Files (x86)\Odoo 10.0\server\odoo\modules\loading.py", line 237, in load_marked_modules File "C:\Program Files (x86)\Odoo 10.0\server\odoo\modules\loading.py", line 156, in load_module_graph File "C:\Program Files (x86)\Odoo 10.0\server\odoo\modules\loading.py", line 95, in _load_data File "C:\Program Files (x86)\Odoo 10.0\server\odoo\tools\convert.py", line 845, in convert_file File "C:\Program Files (x86)\Odoo 10.0\server\odoo\tools\convert.py", line 915, in convert_xml_import File "C:\Program Files (x86)\Odoo 10.0\server\odoo\tools\convert.py", line 796, in parse File "C:\Program Files (x86)\Odoo 10.0\server\odoo\tools\convert.py", line 799, in parse File "C:\Program Files (x86)\Odoo 10.0\server\odoo\tools\convert.py", line 707, in _tag_record File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\ir\ir_model.py", line 1229, in _update File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\ir\ir_ui_view.py", line 362, in create File "C:\Program Files (x86)\Odoo 10.0\server\odoo\models.py", line 3834, in create File "C:\Program Files (x86)\Odoo 10.0\server\odoo\fields.py", line 1041, in determine_inverse File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\ir\ir_ui_view.py", line 220, in _inverse_arch File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\base\ir\ir_ui_view.py", line 380, in write File "C:\Program Files (x86)\Odoo 10.0\server\odoo\models.py", line 3560, in write File "C:\Program Files (x86)\Odoo 10.0\server\odoo\models.py", line 3711, in _write File "C:\Program Files (x86)\Odoo 10.0\server\odoo\models.py", line 1083, in _validate_fields ParseError: "Error while validating constraint Field `wedding_date` does not exist Error context: View `employee.extn` [view_id: 1490, xml_id: n/a, model: hr.employee, parent_id: 874] None" while parsing file:///c:/program files (x86)/odoo 10.0/server/odoo/addons/employee_extn/employee_extn.xml:4, near <record id="employee_extn" model="ir.ui.view"> <field name="name">employee.extn</field> <field name="model">hr.employee</field> <field name="inherit_id" ref="hr.view_employee_form"/> <field name="arch" type="xml"> <data><xpath expr="//form/sheet/notebook/page[2]/group[1]/group[1]/field[@name='identification_id']" position="replace"> <label for="identification_id" string="Aadhaar Number"/> </xpath> <xpath expr="//form/sheet/notebook/page[2]/group[1]/group[2]/field[@name='address_home_id']" position="after"> <field name="address_perm_id"/> </xpath> <xpath expr="//form/sheet/notebook/page[2]/group[1]/group[4]/field[@name='birthday']" position="after"> <field name="wedding_date"/> </xpath> </data></field> </record>