[IMP] mail : Improved the Search View.
[odoo/odoo.git] / addons / hr_payroll / hr_payroll_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4         <!-- Root Menus -->
5
6         <menuitem id="payroll_configure" parent="hr.menu_hr_configuration" name="Payroll" groups="base.group_no_one" sequence="45"/>
7         <menuitem id="menu_hr_root_payroll" parent="hr.menu_hr_root" name="Payroll" sequence="30"/>
8         <menuitem id="menu_hr_payroll_reporting" parent="hr.menu_hr_reporting" name="Payroll" groups="base.group_hr_manager"/>
9
10         <!-- Employee View -->
11         <record id="hr_contract.hr_hr_employee_view_form2" model="ir.ui.view">
12             <field name="name">hr.hr.employee.view.form2</field>
13             <field name="model">hr.employee</field>
14             <field name="inherit_id" ref="hr.view_employee_form"/>
15             <field name="arch" type="xml">
16             <data>
17                 <xpath expr="//page[@string='Personal Information']" position="after">
18                     <page string="Miscellaneous" groups="base.group_hr_user">
19                         <group colspan="2" col="2">
20                             <separator string="Personal Info" colspan="2"/>
21                             <field name="bank_account_id" context="{'display_partner':True, 'partner_id':partner_id}"/>
22                             <field name="place_of_birth"/>
23                             <field name="children"/>
24                             <!-- <field name="basic" invisible="0"/> -->
25                         </group>
26                         <group colspan="2" col="2">
27                             <separator string="Job Info" colspan="2"/>
28                             <field name="manager" select="1"/>
29                             <field name="vehicle" select="1"/>
30                             <field name="vehicle_distance" select="1"/>
31                             <field name="medic_exam" select="1" string="Medical Examination"/>
32                         </group>
33                     </page>
34                 </xpath>
35             </data>
36             </field>
37         </record>
38         <!-- End Employee View -->
39
40         <!-- Contract View -->
41         <record id="hr_contract_form_inherit" model="ir.ui.view">
42             <field name="name">hr.contract.view.form.inherit</field>
43             <field name="model">hr.contract</field>
44             <field name="type">form</field>
45             <field name="inherit_id" ref="hr_contract.hr_contract_view_form"/>
46             <field name="arch" type="xml">
47             <data>
48                 <xpath expr="//group[@name='right_column']" position="before">
49                     <separator string="Payslip Info" colspan="2"/>
50                     <field name="struct_id" required="1"/>
51                 </xpath>
52                  <xpath expr="//field[@name='working_hours']" position="after">
53                     <field name="schedule_pay"/>
54                 </xpath>
55             </data>
56             </field>
57         </record>
58
59         <!-- End Contract View-->
60
61         <!-- Salary structure -->
62         <record id="view_hr_payroll_structure_list_view" model="ir.ui.view">
63             <field name="name">hr.payroll.structure.tree</field>
64             <field name="model">hr.payroll.structure</field>
65             <field name="type">tree</field>
66             <field name="arch" type="xml">
67                 <tree string="Employee Function">
68                     <field name="name"/>
69                     <field name="code"/>
70                     <field name="rule_ids"/>
71                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
72                 </tree>
73             </field>
74         </record>
75         <record id="view_hr_payroll_structure_tree" model="ir.ui.view">
76             <field name="name">hr.payroll.structure.tree</field>
77             <field name="model">hr.payroll.structure</field>
78             <field name="type">tree</field>
79             <field name="field_parent">children_ids</field>
80             <field name="arch" type="xml">
81                 <tree string="Salary Structure">
82                     <field name="name"/>
83                     <field name="code"/>
84                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
85                 </tree>
86             </field>
87         </record>
88
89         <record id="view_hr_payroll_structure_filter" model="ir.ui.view">
90             <field name="name">hr.payroll.structure.select</field>
91             <field name="model">hr.payroll.structure</field>
92             <field name="type">search</field>
93             <field name="arch" type="xml">
94                 <search string="Payroll Structures">
95                     <group col="8" colspan="4">
96                         <field name="name" string="Payroll Structures" filter_domain="['|',('name','ilike',self),('code','ilike',self)]"/>
97                     </group>
98                     <newline/>
99                 </search>
100             </field>
101         </record>
102
103         <record id="view_hr_employee_grade_form" model="ir.ui.view">
104             <field name="name">hr.payroll.structure.form</field>
105             <field name="model">hr.payroll.structure</field>
106             <field name="type">form</field>
107             <field name="arch" type="xml">
108                 <form string="Employee Function">
109                     <group col="4">
110                         <field name="name"/>
111                         <field name="code"/>
112                         <field name="company_id" groups="base.group_multi_company" widget="selection"/>
113                         <field name="parent_id"/>
114                     </group>
115                     <notebook colspan="4">
116                          <page string="Salary Rules">
117                            <field name="rule_ids" domain="[('parent_rule_id','=',False)]">
118                              <tree>
119                                 <field name="name"/>
120                                 <field name="code"/>
121                                 <field name="category_id"/>
122                                 <field name="sequence" invisible="1"/>
123                                 <field name="register_id"/>
124                              </tree>
125                           </field>
126                          </page>
127                     </notebook>
128                 </form>
129             </field>
130         </record>
131
132         <record id="action_view_hr_payroll_structure_list_form" model="ir.actions.act_window">
133             <field name="name">Salary Structures</field>
134             <field name="res_model">hr.payroll.structure</field>
135             <field name="view_type">form</field>
136             <field name="view_id" ref="view_hr_payroll_structure_list_view"/>
137         </record>
138         <menuitem
139             id="menu_hr_payroll_structure_view"
140             action="action_view_hr_payroll_structure_list_form"
141             parent="hr.menu_hr_configuration"
142             sequence="20"
143         />
144         <record id="action_view_hr_payroll_structure_tree" model="ir.actions.act_window">
145             <field name="name">Salary Structures Hierarchy</field>
146             <field name="res_model">hr.payroll.structure</field>
147             <field name="view_type">tree</field>
148             <field name="domain">[('parent_id','=',False)]</field>
149             <field name="view_id" ref="view_hr_payroll_structure_tree"/>
150         </record>
151         <menuitem
152             id="menu_hr_payroll_structure_tree"
153             action="action_view_hr_payroll_structure_tree"
154             parent="payroll_configure"
155             sequence="2"
156             icon="STOCK_INDENT"
157         />
158         <!-- End Salary structure -->
159
160         <!-- Payslip Line -->
161         <record id="view_hr_payslip_line_tree" model="ir.ui.view">
162             <field name="name">hr.payslip.line.tree</field>
163             <field name="model">hr.payslip.line</field>
164             <field name="type">tree</field>
165             <field name="arch" type="xml">
166                 <tree string="Salary Structure" editable="bottom" colors="blue:total == 0">
167                     <field name="category_id"/>
168                     <field name="employee_id" invisible="1"/>
169                     <field name="sequence"/>
170                     <field name="name"/>
171                     <field name="code"/>
172                     <field name="quantity"/>
173                     <field name="rate"/>
174                     <field name="amount"/>
175                     <field name="total"/>
176                     <field name="amount_select" invisible="1"/>
177                     <field name="register_id" invisible="1"/>
178                 </tree>
179             </field>
180         </record>
181         <record id="view_hr_payslip_line_form" model="ir.ui.view">
182             <field name="name">hr.payslip.line.form</field>
183             <field name="model">hr.payslip.line</field>
184             <field name="type">form</field>
185             <field name="arch" type="xml">
186                 <form string="Payslip Line">
187                 <group>
188                     <group>
189                         <field name="name"/>
190                         <field name="code"/>
191                         <field name="slip_id"/>
192                         <field name="employee_id"/>
193                     </group>
194                     <group string="Calculations">
195                         <field name="category_id"/>
196                         <field name="amount_select"/>
197                         <field name="amount_fix"  attrs="{'readonly':[('amount_select','&lt;&gt;','fix')]}"/>
198                         <field name="amount_percentage"  attrs="{'readonly':[('amount_select','&lt;&gt;','percentage')]}"/>
199                         <field name="sequence"/>
200                     </group>
201                     <field name="note"/>
202                 </group>
203                 </form>
204             </field>
205         </record>
206
207         <record id="view_hr_payslip_line_filter" model="ir.ui.view">
208             <field name="name">hr.payslip.line.select</field>
209             <field name="model">hr.payslip.line</field>
210             <field name="type">search</field>
211             <field name="arch" type="xml">
212                 <search string="Search Payslip Lines">
213                     <group col="8" colspan="4">
214                         <field name="name" string="Payslip Lines" filter_domain="['|',('name','ilike',self),('code','ilike',self)]"/>
215                         <separator orientation="vertical"/>
216                         <field name="slip_id"/>
217                         <field name="amount_select"/>
218                     </group>
219                     <newline/>
220                     <group col="8" colspan="4" expand="0" string="Group By...">
221                         <filter string="Salary Rule Category" icon="terp-camera_test" name="category_id" context="{'group_by':'category_id'}"/>
222                         <filter string="Contribution Register" name="register_id" icon="terp-folder-yellow" context="{'group_by':'register_id'}"/>
223                         <separator orientation="vertical"/>
224                         <filter string="Amount Type" name="amount_select" icon="terp-stock_symbol-selection" context="{'group_by':'amount_select'}"/>
225                         <separator orientation="vertical"/>
226                         <filter string="Employees" name="employee_id" icon="terp-personal" context="{'group_by':'employee_id'}"/>
227                     </group>
228                 </search>
229             </field>
230         </record>
231
232
233         <!-- payslip -->
234
235         <record id="view_hr_payslip_tree" model="ir.ui.view">
236             <field name="name">hr.payslip.tree</field>
237             <field name="model">hr.payslip</field>
238             <field name="type">tree</field>
239             <field name="arch" type="xml">
240                 <tree colors="blue:state in ('confirm','hr_check','accont_check');black:state == 'new';gray:state == 'cancel'" string="Payslips">
241                     <field name="number"/>
242                     <field name="employee_id"/>
243                     <field name="name"/>
244                     <field name="date_from"/>
245                     <field name="date_to"/>
246                     <field name="state"/>
247                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
248                     <field name="payslip_run_id" invisible="1"/>
249                 </tree>
250             </field>
251         </record>
252
253         <record id="view_hr_payslip_form" model="ir.ui.view">
254             <field name="name">hr.payslip.form</field>
255             <field name="model">hr.payslip</field>
256             <field name="type">form</field>
257             <field name="arch" type="xml">
258                 <form string="Payslip" version="7.0">
259                 <header>
260                     <button string="Confirm" name="hr_verify_sheet" states="draft"/>
261                     <button string="Refund" name="refund_sheet" states="confirm,done" type='object'/>
262                     <button string="Set to Draft" name="draft" states="cancel"/>
263                     <button string="Compute Sheet" name="compute_sheet" type="object" states="draft"/>
264                     <button string="Cancel" name="cancel_sheet" states="draft,hr_check,confirm,verify"/>
265                     <field name="state" widget="statusbar" statusbar_visible="draft,confirm"/>
266                 </header>
267                 <sheet>
268                     <label for="employee_id" class="oe_form_readonly_hidden"/>
269                     <h1><field name="employee_id" on_change="onchange_employee_id(date_from, date_to, employee_id, contract_id)"/></h1>
270                     <label for="date_from" class="oe_form_readonly_hidden" string="Period"/>
271                     <h2>
272                         from <field name="date_from" on_change="onchange_employee_id(date_from, date_to, employee_id, contract_id)"/>
273                         to <field name="date_to"/>
274                     </h2>
275                     <group col="4">
276                         <field name="contract_id" domain="[('employee_id','=',employee_id)]" on_change="onchange_contract_id(date_from, date_to, employee_id, contract_id)"/>
277                         <field name="number"/>
278                         <field name="struct_id" attrs="{'required':[('contract_id','&lt;&gt;',False)]}"/>
279                         <field name="name"/>
280                         <field name="credit_note"/>
281                     </group>
282                     <notebook>
283                         <page string="Worked Days &amp; Inputs">
284                             <field name="worked_days_line_ids">
285                                 <tree string="Worked Days" editable="bottom">
286                                     <field name="name"/>
287                                     <field name="code"/>
288                                     <field name="number_of_days" sum="Total Working Days"/>
289                                     <field name="number_of_hours"/>
290                                     <field name="contract_id"/>
291                                     <field name="sequence" invisible="True"/>
292                                 </tree>
293                                 <form string="Worked Day">
294                                     <group col="4">
295                                         <field name="name"/>
296                                         <field name="code"/>
297                                         <field name="payslip_id"/>
298                                         <field name="sequence"/>
299                                         <field name="number_of_days"/>
300                                         <field name="number_of_hours"/>
301                                         <field name="contract_id"/>
302                                     </group>
303                                 </form>
304                             </field>
305                             <field name="input_line_ids" colspan="4" nolabel="1">
306                                 <tree string="Input Data" editable="bottom">
307                                     <field name="name"/>
308                                     <field name="code"/>
309                                     <field name="amount"/>
310                                     <field name="contract_id"/>
311                                     <field name="sequence" invisible="True"/>
312                                 </tree>
313                                 <form string="Payslip Line">
314                                     <group col="4">
315                                         <field name="name"/>
316                                         <field name="code"/>
317                                         <field name="payslip_id"/>
318                                         <field name="sequence"/>
319                                         <field name="amount"/>
320                                         <field name="contract_id"/>
321                                     </group>
322                                 </form>
323                             </field>
324                         </page>
325                         <page string="Salary Computation" >
326                             <field name="line_ids" colspan="4" nolabel="1">
327                                 <tree string="Salary Structure" editable="bottom" colors="blue:total == 0">
328                                     <field name="name"/>
329                                     <field name="code"/>
330                                     <field name="category_id"/>
331                                     <field name="sequence" invisible="1"/>
332                                     <field name="quantity"/>
333                                     <field name="rate"/>
334                                     <field name="amount"/>
335                                     <field name="total"/>
336                                 </tree>
337                                 <form string="Payslip Line">
338                                     <group col="4">
339                                         <field name="name"/>
340                                         <field name="code"/>
341                                         <field name="category_id"/>
342                                         <field name="sequence"/>
343                                         <field name="quantity"/>
344                                         <field name="rate"/>
345                                         <field name="amount"/>
346                                         <field name="total"/>
347                                         <field name="salary_rule_id"/>
348                                     </group>
349                                 </form>
350                             </field>
351                         </page>
352                         <page string="Details By Salary Rule Category">
353                             <field name="details_by_salary_rule_category" context="{'group_by':'category_id'}" domain="[('appears_on_payslip', '=', True)]">
354                                 <tree string="Payslip Lines" colors="blue:total == 0">
355                                     <field name="category_id"/>
356                                     <field name="name"/>
357                                     <field name="code"/>
358                                     <field name="total"/>
359                                 </tree>
360                             </field>
361                        </page>
362                        <page string="Other Information">
363                             <group col="2" string="Other Information">
364                                 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
365                                 <field name="payslip_run_id" domain="[('state','=','draft')]"/>
366                                 <field name="paid" readonly="1"/>
367                             </group>
368                             <group string="Notes">
369                             <field name="note"/>
370                             </group>
371                        </page>
372                     </notebook>
373                     </sheet>
374                 </form>
375             </field>
376         </record>
377
378         <record id="view_hr_payslip_filter" model="ir.ui.view">
379             <field name="name">hr.payslip.select</field>
380             <field name="model">hr.payslip</field>
381             <field name="type">search</field>
382             <field name="arch" type="xml">
383                 <search string="Search Payslips">
384                     <group>
385                         <field name="name" string="Payslips" filter_domain="['|'('name','ilike',self),('number','ilike',self)]"/>
386                         <separator orientation="vertical"/>
387                         <field name="date_from"/>
388                         <separator orientation="vertical"/>
389                         <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Slip"/>
390                         <filter icon="terp-camera_test" string="Done" domain="[('state','=','done')]" help="Done Slip"/>
391                         <separator orientation="vertical"/>
392                         <field name="employee_id"/>
393                         <field name="payslip_run_id"/>
394                     </group>
395                     <newline/>
396                     <group expand="0" string="Group By...">
397                         <filter string="Employees" icon="terp-personal" name="employee_id" context="{'group_by':'employee_id'}"/>
398                         <separator orientation="vertical"/>
399                         <filter string="PaySlip Batch" name="payslip_run_id" icon="terp-folder-orange" context="{'group_by':'payslip_run_id'}"/>
400                         <separator orientation="vertical" groups="base.group_multi_company"/>
401                         <filter string="Companies" name="company_id" groups="base.group_multi_company" icon="terp-go-home" context="{'group_by':'company_id'}"/>
402                         <separator orientation="vertical"/>
403                         <filter string="States" name="state" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
404                     </group>
405                 </search>
406             </field>
407         </record>
408         <record id="action_view_hr_payslip_form" model="ir.actions.act_window">
409             <field name="name">Employee Payslips</field>
410             <field name="res_model">hr.payslip</field>
411             <field name="view_type">form</field>
412             <field name="view_id" ref="view_hr_payslip_tree"/>
413             <field name="search_view_id" ref="view_hr_payslip_filter"/>
414         </record>
415         <menuitem action="action_view_hr_payslip_form" id="menu_department_tree" parent="menu_hr_root_payroll"/>
416
417         <!-- Salary Category-->
418         <record id="hr_salary_rule_category_form" model="ir.ui.view">
419             <field name="name">hr.salary.rule.category.form</field>
420             <field name="model">hr.salary.rule.category</field>
421             <field name="type">form</field>
422             <field name="arch" type="xml">
423                 <form string="Salary Categories">
424                     <group col="4">
425                         <field name="name"/>
426                         <field name="code"/>
427                         <field name="parent_id"/>
428                     </group>
429                     <separator string="Notes"/>
430                     <field name="note"/>
431                 </form>
432             </field>
433         </record>
434
435         <record id="hr_salary_rule_category_tree" model="ir.ui.view">
436             <field name="name">hr.salary.rule.category.tree</field>
437             <field name="model">hr.salary.rule.category</field>
438             <field name="type">tree</field>
439             <field name="arch" type="xml">
440                 <tree string="Salary Rule Categories">
441                     <field name="name"/>
442                     <field name="code"/>
443                     <field name="parent_id" invisible="1"/>
444                 </tree>
445             </field>
446         </record>
447         <record id="hr_salary_rule_category_tree_view" model="ir.ui.view">
448             <field name="name">hr.salary.rule.category.tree.view</field>
449             <field name="model">hr.salary.rule.category</field>
450             <field name="type">tree</field>
451             <field name="field_parent">children_ids</field>
452             <field name="arch" type="xml">
453                 <tree string="Salary Rule Categories">
454                     <field name="name"/>
455                     <field name="code"/>
456                     <field name="parent_id" invisible="1"/>
457                 </tree>
458             </field>
459         </record>
460
461         <record id="view_hr_salary_rule_category_filter" model="ir.ui.view">
462             <field name="name">hr.salary.rule.category.select</field>
463             <field name="model">hr.salary.rule.category</field>
464             <field name="type">search</field>
465             <field name="arch" type="xml">
466                 <search string="Salary Rule Categories">
467                     <field name="name" string="Salary Rule Categories" filter_domain="['|'('name','ilike',self),('code','ilike',self)]"/>
468                </search>
469             </field>
470         </record>
471
472         <record id="action_hr_salary_rule_category" model="ir.actions.act_window">
473             <field name="name">Salary Rule Categories</field>
474             <field name="res_model">hr.salary.rule.category</field>
475             <field name="view_type">form</field>
476             <field name="view_id" ref="hr_salary_rule_category_tree"/>
477            <field name="search_view_id" ref="view_hr_salary_rule_category_filter"/>
478         </record>
479         <menuitem
480             id="menu_hr_salary_rule_category"
481             action="action_hr_salary_rule_category"
482             parent="payroll_configure"
483             sequence="11"
484         />
485         <record id="action_hr_salary_rule_category_tree_view" model="ir.actions.act_window">
486             <field name="name">Salary Rule Categories Hierarchy</field>
487             <field name="res_model">hr.salary.rule.category</field>
488             <field name="view_type">tree</field>
489             <field name="domain">[('parent_id','=',False)]</field>
490             <field name="view_id" ref="hr_salary_rule_category_tree_view"/>
491         </record>
492         <menuitem
493             id="menu_hr_salary_rule_category_tree_view"
494             action="action_hr_salary_rule_category_tree_view"
495             parent="payroll_configure"
496             sequence="12"
497             icon="STOCK_INDENT"
498         />
499
500         <!--
501         Contribution Register
502         -->
503         <record id="hr_contribution_register_tree" model="ir.ui.view">
504             <field name="name">hr.contribution.register.tree</field>
505             <field name="model">hr.contribution.register</field>
506             <field name="type">tree</field>
507             <field name="arch" type="xml">
508                 <tree string="Contribution Registers">
509                     <field name="name" select="1"/>
510                     <field name="company_id" select="1" groups="base.group_multi_company" widget="selection"/>
511                 </tree>
512             </field>
513         </record>
514         <record id="hr_contribution_register_filter" model="ir.ui.view">
515             <field name="name">hr.contribution.register.search</field>
516             <field name="model">hr.contribution.register</field>
517             <field name="type">search</field>
518             <field name="arch" type="xml">
519                 <search string="Contribution Registers">
520                     <field name="name" string="Contribution Registers" filter_domain="[('name','ilike',self)]"/>
521                     <separator orientation="vertical"/>
522                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
523                 </search>
524             </field>
525         </record>
526         <record id="hr_contribution_register_form" model="ir.ui.view">
527             <field name="name">hr.contribution.register.form</field>
528             <field name="model">hr.contribution.register</field>
529             <field name="type">form</field>
530             <field name="arch" type="xml">
531                 <form string="Contribution">
532                     <field name="name"/>
533                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
534                     <separator string="Description"/>
535                     <field name="note" nolabel="1"/>
536                 </form>
537             </field>
538         </record>
539         <record id="action_contribution_register_form" model="ir.actions.act_window">
540             <field name="name">Contribution Registers</field>
541             <field name="res_model">hr.contribution.register</field>
542             <field name="view_type">form</field>
543             <field name="help">A contribution register is a third party involved in the salary payment of the employees. It can be the social security, the estate or anyone that collect or inject money on payslips.</field>
544             <field name="view_id" ref="hr_contribution_register_tree"/>
545         </record>
546         <menuitem
547             id="menu_action_hr_contribution_register_form"
548             action="action_contribution_register_form"
549             parent="payroll_configure"
550             sequence="14"
551         />
552
553         <!-- Salary Rules -->
554
555         <record id="hr_salary_rule_list" model="ir.ui.view">
556             <field name="name">hr.salary.rule.list</field>
557             <field name="model">hr.salary.rule</field>
558             <field name="type">tree</field>
559             <field name="arch" type="xml">
560                 <tree string="Salary Rules">
561                     <field name="name"/>
562                     <field name="code"/>
563                     <field name="category_id"/>
564                     <field name="sequence" invisible="1"/>
565                     <field name="register_id"/>
566                 </tree>
567             </field>
568         </record>
569
570         <record id="hr_salary_rule_tree" model="ir.ui.view">
571             <field name="name">hr.salary.rule.tree</field>
572             <field name="model">hr.salary.rule</field>
573             <field name="type">tree</field>
574             <field name="field_parent">child_ids</field>
575             <field eval="20" name="priority"/>
576             <field name="arch" type="xml">
577                 <tree string="Salary Rules">
578                     <field name="name"/>
579                     <field name="code"/>
580                     <field name="category_id" invisible="True"/>
581                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
582                 </tree>
583             </field>
584         </record>
585         <record id="hr_salary_rule_form" model="ir.ui.view">
586             <field name="name">hr.salary.rule.form</field>
587             <field name="model">hr.salary.rule</field>
588             <field name="type">form</field>
589             <field name="arch" type="xml">
590                 <form string="Salary Rules" version="7.0">
591                     <label for="name" class="oe_form_readonly_hidden"/>
592                     <h1><field name="name"/></h1>
593                     <label for="category_id" class="oe_form_readonly_hidden"/>
594                     <h2><field name="category_id"/></h2>
595
596                     <group col="4">
597                        <field name="code" select="1"/>
598                        <field name="sequence" />
599                        <field name="active"/>
600                        <field name="appears_on_payslip"/>
601                        <field name="company_id" widget="selection" groups="base.group_multi_company"/>
602                     </group>
603                     <notebook colspan="6">
604                         <page string="General">
605                             <group col="4">
606                                 <separator colspan="4" string="Conditions"/>
607                                 <field name="condition_select"/><newline/>
608                                 <field name="condition_python" attrs="{'invisible':[('condition_select','&lt;&gt;','python')], 'required': [('condition_select','=','python')]}" colspan="4"/> <newline/>
609                                 <field name="condition_range" attrs="{'invisible':[('condition_select','&lt;&gt;','range')], 'required':[('condition_select','=','range')]}"/><newline/>
610                                 <field name="condition_range_min" colspan="2" attrs="{'invisible':[('condition_select','&lt;&gt;','range')], 'required':[('condition_select','=','range')]}"/><newline/>
611                                 <field name="condition_range_max" colspan="2" attrs="{'invisible':[('condition_select','&lt;&gt;','range')], 'required':[('condition_select','=','range')]}"/><newline/>
612                                 <separator colspan="4" string="Computation"/>
613                                 <field name="amount_select"/><newline/>
614                                 <field name="amount_percentage_base" attrs="{'invisible':[('amount_select','&lt;&gt;','percentage')], 'required': [('amount_select','=','percentage')]}"/><newline/>
615                                 <field name="quantity" attrs="{'invisible':[('amount_select','=','code')], 'required':[('amount_select','!=','code')]}"/><newline/>
616                                 <field name="amount_fix"  attrs="{'invisible':[('amount_select','&lt;&gt;','fix')], 'required':[('amount_select','=','fix')]}"/><newline/>
617                                 <field name="amount_percentage" attrs="{'invisible':[('amount_select','&lt;&gt;','percentage')], 'required':[('amount_select','=','percentage')]}"/>
618                                 <field colspan="4" name="amount_python_compute" attrs="{'invisible':[('amount_select','&lt;&gt;','code')], 'required':[('amount_select','=','code')]}"/>
619                                 <separator colspan="4" string="Company Contribution"/>
620                                 <field name="register_id"/>
621                             </group>
622                         </page>
623                         <page string="Child Rules">
624                            <field name="parent_rule_id"/>
625                            <separator string="Children Definition"/>
626                            <field name="child_ids"/>
627                         </page>
628                            <page string="Inputs">
629                                 <field name="input_ids" mode="tree, form">
630                                     <tree string="Input Data" editable="bottom">
631                                         <field name="name"/>
632                                         <field name="code"/>
633                                     </tree>
634                                 </field>
635                            </page>
636                         <page string="Description">
637                             <field name="note"/>
638                         </page>
639                     </notebook>
640                 </form>
641             </field>
642         </record>
643
644         <record id="view_hr_rule_filter" model="ir.ui.view">
645             <field name="name">hr.salary.rule.select</field>
646             <field name="model">hr.salary.rule</field>
647             <field name="type">search</field>
648             <field name="arch" type="xml">
649                 <search string="Search Salary Rule">
650                     <group col="8">
651                         <field name="name" string="Salary Rules" filter_domain="['|'('name','ilike',self),('code','ilike',self)]"/>
652                         <separator orientation="vertical"/>
653                         <field name="category_id"/>
654                         <field name="condition_range_min"/>
655                     </group>
656                     <newline/>
657                     <group col="8" colspan="4" expand="0" string="Group By...">
658                         <filter string="Category" icon="terp-folder-yellow" name="head" context="{'group_by':'category_id'}"/>
659                     </group>
660                 </search>
661             </field>
662         </record>
663
664         <record id="action_salary_rule_form" model="ir.actions.act_window">
665             <field name="name">Salary Rules</field>
666             <field name="res_model">hr.salary.rule</field>
667             <field name="view_type">form</field>
668             <field name="view_id" ref="hr_salary_rule_list"/>
669             <field name="domain">[('parent_rule_id','=',False)]</field>
670             <field name="search_view_id" ref="view_hr_rule_filter"/>
671         </record>
672
673         <menuitem id="menu_action_hr_salary_rule_form" action="action_salary_rule_form" parent="payroll_configure" sequence="12" groups="base.group_no_one"/>
674
675
676         <act_window name="All Children Rules"
677             domain="[('id', 'in', [active_id])]"
678             res_model="hr.salary.rule"
679             src_model="hr.salary.rule"
680             view_id="hr_salary_rule_tree"
681             view_type="tree"
682             id="act_children_salary_rules"/>
683
684         <!-- payslip runs -->
685
686         <record id="hr_payslip_run_filter" model="ir.ui.view">
687             <field name="name">hr.payslip.run.search</field>
688             <field name="model">hr.payslip.run</field>
689             <field name="type">search</field>
690             <field name="arch" type="xml">
691                 <search string="Search Payslip Batches">
692                     <field name="name" string="Payslip Batches" filter_domain="[('name','ilike',self)]"/>
693                     <separator orientation="vertical"/>
694                     <field name="date_start"/>
695                     <field name="date_end"/>
696                     <separator orientation="vertical"/>
697                     <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Payslip Batches"/>
698                     <filter icon="terp-camera_test" string="Done" domain="[('state','=','close')]" help="Done Payslip Batches"/>
699                 </search>
700             </field>
701         </record>
702
703         <record id="hr_payslip_run_tree" model="ir.ui.view">
704             <field name="name">hr.payslip.run.tree</field>
705             <field name="model">hr.payslip.run</field>
706             <field name="type">tree</field>
707             <field name="arch" type="xml">
708                 <tree string="Payslips Batches">
709                     <field name="name"/>
710                     <field name="date_start"/>
711                     <field name="date_end"/>
712                     <field name="credit_note"/>
713                     <field name="state"/>
714                 </tree>
715             </field>
716         </record>
717
718         <record id="hr_payslip_run_form" model="ir.ui.view">
719             <field name="name">hr.payslip.run.form</field>
720             <field name="model">hr.payslip.run</field>
721             <field name="type">form</field>
722             <field name="arch" type="xml">
723                 <form string="Payslips Batches" version="7.0">
724                 <header>
725                     <button name="close_payslip_run" type="object" string="Close" states="draft"/>
726                     <button name="%(action_hr_payslip_by_employees)d" type="action" states="draft" string="Generate Payslips" />
727                     <button string="Set to Draft" name="draft_payslip_run" type="object" states="close"/>
728                     <field name="state" widget="statusbar"/>
729                 </header>
730                 <sheet>
731                     <group col="4">
732                         <field name="name"/>
733                         <field name="credit_note"/>
734                         <field name="date_start"/>
735                         <field name="date_end"/>
736                     </group>
737                     <field name="slip_ids"/>
738                 </sheet>
739                 </form>
740             </field>
741         </record>
742
743         <record id="action_hr_payslip_run_tree" model="ir.actions.act_window">
744             <field name="name">Payslips Batches</field>
745             <field name="res_model">hr.payslip.run</field>
746             <field name="view_type">form</field>
747             <field name="view_id" ref="hr_payslip_run_tree"/>
748             <field name="search_view_id" ref="hr_payslip_run_filter"/>
749         </record>
750         <menuitem action="action_hr_payslip_run_tree" id="menu_hr_payslip_run" parent="menu_hr_root_payroll"/>
751
752         <!--  Shortcuts -->
753
754         <act_window name="Payslips"
755             domain="[('employee_id', '=', active_id)]"
756             context="{'search_default_employee_id': [active_id], 'default_employee_id': active_id}"
757             res_model="hr.payslip"
758             src_model="hr.employee"
759             view_id ="view_hr_payslip_tree"
760             id="act_hr_employee_payslip_list"
761             groups="base.group_hr_manager"/>
762
763         <act_window name="Payslip Computation Details"
764                 domain="[('slip_id', '=', active_id)]"
765                 context="{'default_slip_id': active_id}"
766                 res_model="hr.payslip.line"
767                 src_model="hr.payslip"
768                 id="act_payslip_lines"/>
769
770         <act_window name="Payslip Lines"
771                 domain="[('register_id', '=', active_id)]"
772                 context="{'default_register_id': active_id, 'search_default_register_id': 1}"
773                 res_model="hr.payslip.line"
774                 src_model="hr.contribution.register"
775                 id="act_contribution_reg_payslip_lines"/>
776
777     </data>
778 </openerp>
779