5 <record id="view_hr_evaluation_plan_search" model="ir.ui.view">
6 <field name="name">hr_evaluation.plan.search</field>
7 <field name="model">hr_evaluation.plan</field>
8 <field name="arch" type="xml">
9 <search string="Appraisal Plan">
10 <field name="name" string="Appraisal Plans"/>
11 <field name="company_id" groups="base.group_multi_company"/>
12 <group expand="0" string="Group By..." groups="base.group_multi_company">
13 <filter string="Company" icon="terp-go-home" domain="[]" context="{'group_by':'company_id'}"/>
19 <record model="ir.ui.view" id="view_hr_evaluation_plan_form">
20 <field name="name">hr_evaluation.plan.form</field>
21 <field name="model">hr_evaluation.plan</field>
22 <field name="arch" type="xml">
23 <form string="Appraisal Plan" version="7.0">
28 <field name="company_id" widget="selection" groups="base.group_multi_company"/>
29 <field name="active"/>
32 <field name="month_first"/>
33 <field name="month_next"/>
37 <page string="Appraisal Phases">
38 <field name="phase_ids"/>
45 <record model="ir.ui.view" id="view_hr_evaluation_plan_tree">
46 <field name="name">hr_evaluation.plan.form</field>
47 <field name="model">hr_evaluation.plan</field>
48 <field name="arch" type="xml">
49 <tree string="Appraisal Plan">
51 <field name="month_first"/>
52 <field name="month_next"/>
53 <field name="company_id" groups="base.group_multi_company"/>
57 <record model="ir.actions.act_window" id="open_view_hr_evaluation_plan_tree">
58 <field name="name">Appraisal Plans</field>
59 <field name="res_model">hr_evaluation.plan</field>
60 <field name="view_type">form</field>
61 <field name="view_mode">tree,form</field>
64 <!-- Appraisal Interviews Action -->
66 <record id="act_hr_employee_2_hr__evaluation_interview" model="ir.actions.act_window">
67 <field name="res_model">hr.evaluation.interview</field>
68 <field name="view_type">form</field>
69 <field name="name">Interviews</field>
70 <field name="view_mode">tree,form</field>
71 <field name="context">{'search_default_user_to_review_id': [active_id], 'default_user_to_review_id': active_id}</field>
74 <menuitem name="Appraisal" parent="hr.menu_hr_root" id="menu_eval_hr" sequence="25"/>
75 <menuitem name="Periodic Appraisal" parent="hr.menu_hr_configuration" id="menu_eval_hr_config" sequence="4"/>
76 <menuitem parent="hr.menu_hr_configuration" id="menu_open_view_hr_evaluation_plan_tree"
77 action="open_view_hr_evaluation_plan_tree" sequence="15"/>
79 <record model="ir.ui.view" id="view_hr_evaluation_plan_phase_form">
80 <field name="name">hr_evaluation.plan.phase.form</field>
81 <field name="model">hr_evaluation.plan.phase</field>
82 <field name="arch" type="xml">
83 <form string="Appraisal Plan Phases" version="7.0">
85 <page string="General">
87 <field name="plan_id" invisible="1"/>
92 <field name="sequence"/>
95 <separator string="Action to Perform" colspan="4"/>
96 <field name="action"/>
97 <field name="survey_id" domain="[('state','=','open')]"/>
99 <group string="Send to Managers">
100 <field name="send_answer_manager"/>
101 <field name="send_anonymous_manager"/>
102 </group><group string="Send to Employees">
103 <field name="send_answer_employee"/>
104 <field name="send_anonymous_employee"/>
109 <page string="Mail Settings">
110 <field name="mail_feature"/>
111 <separator string="Mail Body"/>
112 <field name="mail_body"/>
113 <group string="Legend">
114 <label string=" (employee_name)s: Partner name"/>
115 <label string="(user_signature)s: User name"/>
116 <label string="(date)s: Current Date"/>
117 <label string="(eval_name)s:Appraisal Name"/>
124 <record model="ir.ui.view" id="view_hr_evaluation_plan_phase_tree">
125 <field name="name">hr_evaluation.plan.phase.form</field>
126 <field name="model">hr_evaluation.plan.phase</field>
127 <field name="arch" type="xml">
128 <tree string="Appraisal Plan Phases" editable="bottom" >
129 <field name="sequence" widget="handle"/>
131 <field name="action"/>
132 <field name="survey_id" domain="[('res_model','=','hr_evaluation')]"/>
138 <record id="hr_hr_employee_view_form" model="ir.ui.view">
139 <field name="name">hr.hr.employee.view.form</field>
140 <field name="model">hr.employee</field>
141 <field name="inherit_id" ref="hr.view_employee_form"/>
142 <field name="arch" type="xml">
143 <xpath expr="//group[@name='active_group']" position="before">
144 <group string="Appraisals">
145 <field name="evaluation_plan_id"/>
146 <field name="evaluation_date"/>
149 <xpath expr="//div[@name='button_box']" position="inside">
150 <button name="%(act_hr_employee_2_hr__evaluation_interview)d" string="Appraisal Interviews" type="action"/>
155 <record model="ir.ui.view" id="view_hr_evaluation_form">
156 <field name="name">hr_evaluation.evaluation.form</field>
157 <field name="model">hr_evaluation.evaluation</field>
158 <field name="arch" type="xml">
159 <form string="Appraisal" version="7.0">
161 <button name="button_plan_in_progress" string="Start Appraisal" states="draft" type="object" class="oe_highlight"/>
162 <button name="button_final_validation" string="Validate Appraisal" states="wait" type="object" class="oe_highlight"/>
163 <button name="button_done" string="Done" states="progress" type="object" class="oe_highlight"/>
164 <button name="button_draft" string="Reset to Draft" states="cancel" type="object" />
165 <button name="button_cancel" string="Cancel Appraisal" states="draft,wait,progress" type="object"/>
166 <field name="state" widget="statusbar" statusbar_visible="draft,progress,wait,done" statusbar_colors='{"progress":"blue"}'/>
169 <label for="employee_id" class="oe_edit_only"/>
171 <field name="employee_id" class="oe_inline" attrs="{'readonly': [('state', '=', 'done')]}" on_change="onchange_employee_id(employee_id)"/>
172 <field name="date" attrs="{'readonly': [('state', '=', 'done')]}"/>
174 <label for="plan_id" class="oe_edit_only"/>
175 <h2><field name="plan_id" attrs="{'readonly': [('state', '=', 'done')]}"/></h2>
177 <group colspan="4" attrs="{'invisible':['|', ('state','=','draft'), ('state', '=', 'wait')]}">
178 <field name="rating" attrs="{'readonly':[('state','<>','progress')]}"/>
179 <field name="date_close" readonly="1"/>
182 <group string="Appraisal Forms" attrs="{'invisible':[('state','=','draft')]}">
183 <field nolabel="1" name="survey_request_ids" attrs="{'readonly': [('state', '=', 'done')]}" />
185 <group string="Internal Notes" attrs="{'invisible':[('state','=','draft')]}">
186 <field nolabel="1" name="note_action"
187 groups="base.group_hr_manager" placeholder="Appraisal Summary..."/>
189 <group string="Public Notes" attrs="{'invisible':[('state','=','draft')]}">
190 <field nolabel="1" name="note_summary" placeholder="Action Plan..."/>
193 <div class="oe_chatter">
194 <field name="message_follower_ids" widget="mail_followers"/>
195 <field name="message_ids" widget="mail_thread"/>
201 <record model="ir.ui.view" id="view_hr_evaluation_tree">
202 <field name="name">hr_evaluation.evaluation.tree</field>
203 <field name="model">hr_evaluation.evaluation</field>
204 <field name="arch" type="xml">
205 <tree colors="blue:state == 'draft';black:state in ('wait','progress');gray:state in('done','cancel')" string="Appraisal">
206 <field name="employee_id"/>
207 <field name="plan_id"/>
209 <field name="rating"/>
210 <field name="state"/>
215 <record id="hr_evaluation.evaluation_search" model="ir.ui.view">
216 <field name="name">hr_evaluation.evaluation_search</field>
217 <field name="model">hr_evaluation.evaluation</field>
218 <field name="arch" type="xml">
219 <search string="Search Appraisal">
221 <filter icon="terp-check" string="Pending" domain="[('state','=','wait')]" help="Appraisal that are in Plan In Progress state"/>
222 <filter icon="terp-camera_test" string="In progress" domain="[('state','=','progress')]" help="Appraisal that are in waiting appreciation state"/>
223 <field name="employee_id" />
224 <field name="plan_id"/>
225 <group expand='0' string='Group by...'>
226 <filter string='Employee' icon="terp-personal" domain="[]" context="{'group_by' : 'employee_id'}" />
227 <filter string='Plan' icon="terp-stock_align_left_24" domain="[]" context="{'group_by' : 'plan_id'}" />
228 <filter string='Status' icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by' : 'state'}" />
229 <filter string='Appraisals Month' icon="terp-go-month" domain="[]" context="{'group_by' : 'date'}" help="Appraisals by Month" />
235 <record model="ir.actions.act_window" id="open_view_hr_evaluation_tree">
236 <field name="name">Appraisal</field>
237 <field name="res_model">hr_evaluation.evaluation</field>
238 <field name="view_type">form</field>
239 <field name="view_mode">tree,form</field>
240 <field name="search_view_id" ref="hr_evaluation.evaluation_search"/>
241 <field name="context">{"search_default_next_month":1}</field>
242 <field name="help" type="html">
243 <p class="oe_view_nocontent_create">
244 Click to create a new appraisal.
246 Each employee may be assigned an Appraisal Plan. Such a plan
247 defines the frequency and the way you manage your periodic
248 personnel evaluation. You will be able to define steps and
249 attach interviews to each step. OpenERP manages all kinds of
250 evaluations: bottom-up, top-down, self-evaluation and final
251 evaluation by the manager.
256 <menuitem name="Appraisals" parent="menu_eval_hr" id="menu_open_view_hr_evaluation_tree"
257 action="open_view_hr_evaluation_tree" groups="base.group_hr_user"/>
259 <record model="ir.ui.view" id="view_hr_evaluation_interview_form">
260 <field name="name">hr_evaluation.interview.form</field>
261 <field name="model">hr.evaluation.interview</field>
262 <field name="arch" type="xml">
263 <form string="Interview Appraisal" version="7.0">
265 <button string="Cancel Survey" name="survey_req_cancel" type="object"
266 states="draft,waiting_answer" class="oe_left"/>
267 <button string="Print Survey" name="action_print_survey" type="object" states='waiting_answer,done' attrs="{'readonly':[('survey_id','=',False)]}"/>
268 <button string="Send Request" name="survey_req_waiting_answer" type="object"
269 states="draft" class="oe_highlight"/>
270 <button string="Answer Survey" class="oe_highlight" name="action_start_survey" type="object" states='waiting_answer' attrs="{'readonly':[('request_id','=',False)]}"/>
271 <button string="Done" name="survey_req_done" type="object"
272 states="waiting_answer"/>
273 <field name="state" widget="statusbar" statusbar_visible="waiting_answer,done"/>
276 <div class="oe_right oe_button_box" name="button_box">
277 <button string="Send Reminder Email" name="%(mail.action_email_compose_message_wizard)d" type="action"
278 states="waiting_answer"
279 context="{'default_body': 'Hello,\n\nKindly post your response for the survey interview.\n\nThanks',
280 'default_subject': 'Reminder to fill up Survey' }"/>
284 <field name="evaluation_id" string="Appraisal"/>
285 <field name="phase_id"/>
286 <field name="user_to_review_id" readonly="1"/>
289 <field name="user_id" string="Interviewer" context="{'default_groups_ref': ['base.group_user', 'base.group_partner_manager', 'base.group_hr_manager']}"/>
290 <field name="deadline"/>
293 <field name="request_id"/>
294 <field name="survey_id" domain="[('res_model','=','hr_evaluation')]" readonly="1"/>
302 <record model="ir.ui.view" id="view_hr_evaluation_interview_tree">
303 <field name="name">hr_evaluation.interview.tree</field>
304 <field name="model">hr.evaluation.interview</field>
305 <field name="arch" type="xml">
306 <tree string="Interview Appraisal">
307 <field name="deadline" string="Deadline Date"/>
308 <field name="survey_id" domain="[('res_model','=','hr_evaluation')]"/>
309 <field name="user_id" string="Interviewer"/>
310 <field name="user_to_review_id"/>
311 <field name="request_id" readonly="1" invisible="True"/>
312 <button name="action_start_survey" string="Answer Survey" type="object" icon="gtk-execute" attrs="{'readonly':[('request_id','=',False)]}"/>
313 <button name="action_print_survey" string="Print Survey" type="object" icon="gtk-print" attrs="{'readonly':[('survey_id','=',False)]}"/>
314 <button name="%(mail.action_email_compose_message_wizard)d" string="Send Reminder Email" icon="terp-mail-message-new" type="action" states="waiting_answer"/>
315 <field name="state"/>
316 <button string="Send Request" name="survey_req_waiting_answer" states="draft" type="object" icon="gtk-yes" />
317 <button string="Done" name="survey_req_done" states="waiting_answer" type="object" icon="gtk-jump-to" />
322 <record id="view_hr_evaluation_interview_search" model="ir.ui.view">
323 <field name="name">view_hr_evaluation_interview_search</field>
324 <field name="model">hr.evaluation.interview</field>
325 <field name="arch" type="xml">
326 <search string="Search Appraisal">
327 <field name="deadline"/>
328 <filter icon="terp-gtk-go-back-rtl" string="To Do" name="todo" domain="[('state','=','waiting_answer')]"/>
329 <field name="user_to_review_id"/>
330 <field name="user_id" string="Interviewer"/>
331 <group expand="0" string="Group By...">
332 <filter string="Interviewer" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
333 <filter string="Survey" icon="terp-stock_align_left_24" domain="[]" context="{'group_by':'survey_id'}"/>
334 <filter string="Status" name="group_state" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
340 <record id="view_evaluation_calendar" model="ir.ui.view">
341 <field name="name">Interview Requests</field>
342 <field name="model">hr.evaluation.interview</field>
343 <field name="arch" type="xml">
344 <calendar string="Interview Request" color="user_to_review_id" date_start="deadline">
345 <field name="request_id"/>
350 <record model="ir.actions.act_window" id="action_hr_evaluation_interview_tree">
351 <field name="name">Interview Requests</field>
352 <field name="res_model">hr.evaluation.interview</field>
353 <field name="view_type">form</field>
354 <field name="view_id" eval="False"/>
355 <field name="context">{"search_default_todo":1,"search_default_user_id":uid}</field>
356 <field name="search_view_id" ref="view_hr_evaluation_interview_search"/>
357 <field name="help" type="html">
358 <p class="oe_view_nocontent_create">
359 Click to create a new interview request related to a personal evaluation.
361 Interview requests are usually generated automatically by
362 OpenERP according to an employee's appraisal plan. Each user
363 receives automatic emails and requests to evaluate their
364 colleagues periodically.
369 <record model="ir.actions.act_window.view" id="hr_evaluation_interview_tree">
370 <field name="sequence" eval="1"/>
371 <field name="view_mode">tree</field>
372 <field name="view_id" ref="view_hr_evaluation_interview_tree"/>
373 <field name="act_window_id" ref="action_hr_evaluation_interview_tree"/>
375 <record model="ir.actions.act_window.view" id="hr_evaluation_interview_form">
376 <field name="sequence" eval="2"/>
377 <field name="view_mode">form</field>
378 <field name="view_id" ref="view_hr_evaluation_interview_form"/>
379 <field name="act_window_id" ref="action_hr_evaluation_interview_tree"/>
381 <record model="ir.actions.act_window.view" id="action_view_evaluation_calendar">
382 <field name="sequence" eval="3"/>
383 <field name="view_mode">calendar</field>
384 <field name="view_id" ref="view_evaluation_calendar"/>
385 <field name="act_window_id" ref="action_hr_evaluation_interview_tree"/>
388 <menuitem name="Interview Requests" parent="menu_eval_hr" id="menu_open_hr_evaluation_interview_requests"
389 action="action_hr_evaluation_interview_tree"/>
391 <!-- Email Compose message Action-->
393 id="evaluation_reminders" name="Appraisal Reminders"
394 res_model="mail.compose.message"
395 src_model="hr.evaluation.interview"
396 view_type="form" view_mode="form"
397 target="new" multi="True"
398 key2="client_action_multi"
399 context="{'default_composition_mode': 'mass_mail',
400 'default_body': 'Hello,\n\nKindly post your response for the survey interview.\n\nThanks',
401 'default_subject': 'Reminder to fill up Survey'}"/>