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