1 <?xml version="1.0" encoding="utf-8"?>
5 <menuitem id="menu_hr_root" icon="terp-hr" name="Human Resources" sequence="15"/>
6 <menuitem id="menu_hr_main" parent="menu_hr_root" name="Human Resources" sequence="0" groups="base.group_hr_manager,base.group_hr_user"/>
7 <menuitem id="menu_hr_configuration" name="Configuration" parent="hr.menu_hr_root" groups="base.group_hr_manager" sequence="50"/>
8 <menuitem id="menu_hr_management" name="Human Resources" parent="hr.menu_hr_configuration" sequence="1"/>
9 <menuitem id="menu_view_employee_category_configuration_form" parent="hr.menu_hr_management" groups="base.group_hr_manager" name="Employees" sequence="1" />
16 <record id="view_employee_form" model="ir.ui.view">
17 <field name="name">hr.employee.form</field>
18 <field name="model">hr.employee</field>
19 <field name="type">form</field>
20 <field name="arch" type="xml">
21 <form string="Employee">
22 <group colspan="4" col="8">
23 <group colspan="6" col="6">
24 <field colspan="6" name="name" />
25 <field name="user_id" on_change="onchange_user(user_id)"/>
26 <field name="company_id" widget="selection" groups="base.group_multi_company,base.group_extended" on_change="onchange_company(company_id)"/>
27 <field name="active" groups="base.group_extended"/>
29 <field name="department_id" widget="selection" on_change="onchange_department(department_id)"/>
30 <field name="parent_id" />
32 <group colspan="2" col="1">
33 <field name="photo" widget='image' nolabel="1"/>
36 <notebook colspan="6">
37 <page string="Personal Information">
38 <group col="2" colspan="2">
39 <separator colspan="2" string="Social IDs"/>
41 <field name="sinid" groups="base.group_extended"/>
42 <field name="identification_id" groups="base.group_extended"/>
43 <field name="passport_id"/>
45 <group col="2" colspan="2">
46 <separator string="Status" colspan="2"/>
47 <field name="gender"/>
48 <field name="marital" widget="selection"/>
49 <field name="country_id"/>
50 <field name="birthday"/>
52 <group col="2" colspan="2">
53 <separator string="Contact Information" colspan="2"/>
54 <field name="address_home_id" colspan="2"/>
55 <field name="partner_id" invisible="1" />
56 <field name="address_id" colspan="2" domain="[('partner_id', '=', partner_id)]"/>
57 <field name="work_phone"/>
58 <field name="work_email" widget="email" />
59 <field name="work_location"/>
61 <group col="2" colspan="2">
62 <separator string="Position" colspan="2"/>
63 <field name="job_id" domain="[('state','!=','old')]"/>
64 <field name="coach_id" />
67 <page string="Categories">
68 <field name="category_ids" nolabel="1"/>
71 <field colspan="4" nolabel="1" name="notes"/>
78 <record id="view_employee_tree" model="ir.ui.view">
79 <field name="name">hr.employee.tree</field>
80 <field name="model">hr.employee</field>
81 <field name="type">tree</field>
82 <field name="field_parent">child_ids</field>
83 <field name="arch" type="xml">
84 <tree string="Employees">
86 <field name="work_phone"/>
87 <field name="company_id" groups="base.group_multi_company"/>
88 <field name="work_email" invisible="1"/>
89 <field name="department_id"/>
90 <field name="job_id"/>
91 <field name="parent_id"/>
92 <field name="coach_id" invisible="1" />
97 <record id="view_employee_filter" model="ir.ui.view">
98 <field name="name">Employees</field>
99 <field name="model">hr.employee</field>
100 <field name="type">search</field>
101 <field name="arch" type="xml">
102 <search string="Employees">
103 <filter icon="terp-personal+" domain="[('active','=',True)]" name="active" string="Active" groups="base.group_extended"/>
104 <separator orientation="vertical" />
106 <field name="department_id" widget="selection">
107 <filter icon="terp-personal+" domain="[('department_id','=',context.get('department_id',False))]" string="My Departments Employee"/>
109 <field name="job_id" widget="selection"/>
110 <field name="parent_id"/>
112 <group expand="0" string="Group By...">
113 <filter string="Manager" icon="terp-personal" domain="[]" context="{'group_by':'parent_id'}"/>
114 <filter string="Coach" icon="terp-personal" domain="[]" context="{'group_by':'coach_id'}" groups="base.group_extended"/>
115 <separator orientation="vertical" />
116 <filter string="Department" icon="terp-personal+" domain="[]" context="{'group_by':'department_id'}"/>
117 <filter string="Job" icon="terp-gtk-select-all" domain="[]" context="{'group_by':'job_id'}"/>
118 <filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
124 <record id="open_view_employee_tree" model="ir.actions.act_window">
125 <field name="name">Employees Structure</field>
126 <field name="res_model">hr.employee</field>
127 <field name="view_type">tree</field>
128 <field name="view_mode">tree,form</field>
129 <field name="view_id" ref="view_employee_tree"/>
130 <field name="domain">[('parent_id','=',False),('user_id','=',uid)]</field>
131 <field name="search_view_id" ref="view_employee_filter"/>
134 <record id="open_view_employee_list" model="ir.actions.act_window">
135 <field name="name">Employees</field>
136 <field name="res_model">hr.employee</field>
137 <field name="view_type">form</field>
138 <field name="view_mode">tree,form</field>
139 <field name="view_id" eval="False"/>
140 <field name="search_view_id" ref="view_employee_filter"/>
143 <record id="open_view_employee_list_my" model="ir.actions.act_window">
144 <field name="name">Employees</field>
145 <field name="res_model">hr.employee</field>
146 <field name="view_type">form</field>
147 <field name="view_mode">tree,form</field>
148 <field name="domain">[]</field>
149 <field name="context">{"search_default_department_id": department_id,"search_default_active":eval('True')}</field>
150 <field name="view_id" ref="view_employee_tree"/>
151 <field name="search_view_id" ref="view_employee_filter"/>
152 <field name="help">The employee directory contains all data related to your employees : from their photo up to their hourly estimated costs for the timesheets.Employees are managed by departments and can be linked to users to manage their access rights.</field>
155 <menuitem action="open_view_employee_list_my" id="menu_open_view_employee_list_my" sequence="3" parent="menu_hr_main" groups="base.group_hr_manager,base.group_hr_user"/>
158 =======================
159 Employee marital status
160 =======================
163 <record id="hr_hr_employee_marital_status_tree" model="ir.ui.view">
164 <field name="name">hr.hr.employee.marital.status.tree</field>
165 <field name="model">hr.employee.marital.status</field>
166 <field name="type">tree</field>
167 <field name="arch" type="xml">
168 <tree string="Marital Status">
169 <field name="name" />
174 <record id="hr_hr_employee_marital_status_form" model="ir.ui.view">
175 <field name="name">hr.hr.employee.marital.status</field>
176 <field name="model">hr.employee.marital.status</field>
177 <field name="type">form</field>
178 <field name="arch" type="xml">
179 <form string="Marital Status">
181 <separator colspan="4" string="Description"/>
182 <field colspan="4" name="description" nolabel="1"/>
187 <record id="action_hr_marital_status" model="ir.actions.act_window">
188 <field name="name">Marital Status</field>
189 <field name="res_model">hr.employee.marital.status</field>
190 <field name="view_type">form</field>
191 <field name="view_mode">tree,form</field>
192 <field name="view_id" ref="hr_hr_employee_marital_status_tree"/>
195 <menuitem action="action_hr_marital_status" id="hr_menu_marital_status"
196 parent="hr.menu_view_employee_category_configuration_form" sequence="3" groups="base.group_extended"/>
199 =======================
200 Employee architecture
201 =======================
204 <record id="view_partner_tree2" model="ir.ui.view">
205 <field name="name">hr.employee.tree</field>
206 <field name="model">hr.employee</field>
207 <field name="type">tree</field>
208 <field name="field_parent">child_ids</field>
209 <field name="arch" type="xml">
210 <tree string="Employees">
212 <field name="ssnid"/>
213 <field name="user_id"/>
214 <field name="address_id"/>
219 <record id="action2" model="ir.actions.act_window">
220 <field name="name">Employee Hierarchy</field>
221 <field name="type">ir.actions.act_window</field>
222 <field name="res_model">hr.employee</field>
223 <field name="domain">[('id','in',active_ids)]</field>
224 <field name="view_type">tree</field>
225 <field name="view_id" ref="view_partner_tree2"/>
229 <field eval="'action'" name="key"/>
230 <field eval="'client_action_multi'" name="key2"/>
231 <field eval="['hr.employee']" name="models"/>
232 <field name="name">Employees Hierarchy</field>
233 <field eval="'ir.actions.act_window,'+str(action2)" name="value"/>
234 <field eval="True" name="isobject"/>
235 <field eval="True" name="replace"/>
244 <record id="view_employee_category_form" model="ir.ui.view">
245 <field name="name">hr.employee.category.form</field>
246 <field name="model">hr.employee.category</field>
247 <field name="type">form</field>
248 <field name="arch" type="xml">
249 <form string="Employee Category">
250 <field name="name" />
251 <field name="parent_id" />
256 <record id="view_employee_category_list" model="ir.ui.view">
257 <field name="name">hr.employee.category.list</field>
258 <field name="model">hr.employee.category</field>
259 <field name="type">tree</field>
260 <field eval="8" name="priority"/>
261 <field name="arch" type="xml">
262 <tree string="Employees Categories">
263 <field name="complete_name"/>
268 <record id="view_employee_category_tree" model="ir.ui.view">
269 <field name="name">hr.employee.category.tree</field>
270 <field name="model">hr.employee.category</field>
271 <field name="type">tree</field>
272 <field name="field_parent">child_ids</field>
273 <field name="arch" type="xml">
274 <tree string="Employees Categories">
280 <record id="open_view_categ_form" model="ir.actions.act_window">
281 <field name="name">Categories of Employee</field>
282 <field name="res_model">hr.employee.category</field>
283 <field name="view_type">form</field>
284 <field name="view_mode">tree,form</field>
287 <menuitem action="open_view_categ_form" id="menu_view_employee_category_form"
288 parent="menu_view_employee_category_configuration_form" sequence="1" groups="base.group_extended"/>
290 <record id="open_view_categ_tree" model="ir.actions.act_window">
291 <field name="name">Categories structure</field>
292 <field name="res_model">hr.employee.category</field>
293 <field name="view_type">tree</field>
294 <field name="view_id" ref="view_employee_category_tree"/>
295 <field name="domain">[('parent_id','=',False)]</field>
298 <record id="hr_employee_normal_action_tree" model="ir.actions.act_window">
299 <field name="name">Employees</field>
300 <field name="type">ir.actions.act_window</field>
301 <field name="res_model">hr.employee</field>
302 <field name="view_type">form</field>
303 <field name="view_mode">tree,form</field>
306 <record id="hr_employee_category_open" model="ir.values">
307 <field eval="'tree_but_open'" name="key2"/>
308 <field eval="'hr.employee.category'" name="model"/>
309 <field name="name">Employees by Categories</field>
310 <field eval="'ir.actions.act_window,%d'%hr_employee_normal_action_tree" name="value"/>
311 <field eval="True" name="object"/>
314 <menuitem action="open_view_categ_tree" groups="base.group_extended"
315 id="menu_view_employee_category_tree" parent="hr.menu_view_employee_category_form"/>
317 <record id="view_hr_job_form" model="ir.ui.view">
318 <field name="name">hr.job.form</field>
319 <field name="model">hr.job</field>
320 <field name="type">form</field>
321 <field name="arch" type="xml">
323 <group col="6" colspan="4">
324 <field name="name" />
325 <field name="department_id" />
326 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
327 <field name="expected_employees" on_change="on_change_expected_employee(expected_employees,no_of_employee)"/>
328 <field name="no_of_employee"/>
329 <field name="no_of_recruitment"/>
332 <notebook colspan="4">
333 <page string="Description">
334 <separator colspan="4" string="Job Description"/>
335 <field name="description" colspan="4" nolabel="1"/>
336 <separator colspan="4" string="Requirements"/>
337 <field name="requirements" colspan="4" nolabel="1"/>
339 <page string="Employee">
340 <field name="employee_ids" colspan='4' nolabel="1" mode="tree,form"/>
343 <group col="6" colspan="4">
344 <field name="state"/>
345 <button name="job_recruitement" string="In Recruitement" states="open" type="object" icon="gtk-go-forward"/>
346 <button name="job_open" string="In Position" states="old,recruit" type="object" icon="terp-camera_test"/>
347 <button name="job_old" string="Mark as Old" states="open,recruit" type="object" icon="gtk-cancel"/>
353 <record id="view_hr_job_tree" model="ir.ui.view">
354 <field name="name">hr.job.tree</field>
355 <field name="model">hr.job</field>
356 <field name="type">tree</field>
357 <field name="arch" type="xml">
359 <field name="name" />
360 <field name="department_id" />
361 <field name="company_id" groups="base.group_multi_company"/>
362 <field name="expected_employees"/>
363 <field name="no_of_employee"/>
364 <field name="no_of_recruitment"/>
365 <field name="state"/>
370 <record id="view_job_filter" model="ir.ui.view">
371 <field name="name">Job</field>
372 <field name="model">hr.job</field>
373 <field name="type">search</field>
374 <field name="arch" type="xml">
375 <search string="Jobs">
376 <filter icon="terp-check" domain="[('state','in',('open','recruit'))]" string="Current"
377 name="Current" help="Open and in recruitment positions"/>
378 <separator orientation="vertical"/>
379 <filter icon="terp-personal+" domain="[('state','=','recruit')]" string="In Recruitment"
380 help="In Recruitment"/>
381 <separator orientation="vertical"/>
383 <field name="department_id" widget="selection">
384 <filter icon="terp-personal+" domain="[('department_id', '=', context.get('department_id', False))]" help="My Departments Jobs"/>
387 <group expand="0" string="Group By...">
388 <filter string="Department" icon="terp-personal+" domain="[]" context="{'group_by':'department_id'}"/>
389 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
390 <filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
396 <record model="ir.actions.act_window" id="action_hr_job">
397 <field name="name">Job Positions</field>
398 <field name="res_model">hr.job</field>
399 <field name="view_type">form</field>
400 <field name="view_mode">tree,form</field>
401 <field name="search_view_id" ref="view_job_filter"/>
402 <field name="context">{"search_default_Current":1,"search_default_department_id": department_id}</field>
403 <field name="help">Job Positions are used to define the jobs, the requirements. You can attach a survey to a job position. This survey will be used in the recruitement process to evaluate the applicants for this job position.</field>
406 <menuitem name="Recruitment" id="base.menu_crm_case_job_req_main" parent="menu_hr_root" groups="base.group_hr_user"/>
407 <menuitem parent="base.menu_crm_case_job_req_main" id="menu_hr_job" action="action_hr_job" sequence="2"/>