[IMP] account : Convert invoice line to editable list and call the onchange method...
[odoo/odoo.git] / addons / account / account_invoice_view.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <openerp>
3     <data>
4
5         <!-- Invoices -->
6         <record id="view_invoice_line_calendar" model="ir.ui.view">
7             <field name="name">account.invoice.calendar</field>
8             <field name="model">account.invoice</field>
9             <field name="type">calendar</field>
10             <field name="arch" type="xml">
11                 <calendar string="Invoices" color="journal_id" date_start="date_invoice">
12                     <field name="partner_id"/>
13                     <field name="amount_total"/>
14                 </calendar>
15             </field>
16         </record>
17
18         <record model="ir.ui.view" id="view_invoice_graph">
19             <field name="name">account.invoice.graph</field>
20             <field name="model">account.invoice</field>
21             <field name="type">graph</field>
22             <field name="arch" type="xml">
23                 <graph string="Invoices" type="bar">
24                     <field name="partner_id"/>
25                     <field name="amount_total" operator="+"/>
26                 </graph>
27             </field>
28         </record>
29
30         <record id="view_invoice_line_tree" model="ir.ui.view">
31             <field name="name">account.invoice.line.tree</field>
32             <field name="model">account.invoice.line</field>
33             <field name="type">tree</field>
34             <field name="arch" type="xml">
35                 <tree string="Invoice Line">
36                     <field name="name"/>
37                     <field name="account_id" groups="account.group_account_user"/>
38                     <field name="quantity"/>
39                     <field name="uos_id" groups="product.group_uom"/>
40                     <field name="price_unit"/>
41                     <field name="discount" groups="sale.group_discount_per_so_line"/>
42                     <field name="price_subtotal"/>
43                 </tree>
44             </field>
45         </record>
46
47         <record id="view_invoice_line_form" model="ir.ui.view">
48             <field name="name">account.invoice.line.form</field>
49             <field name="model">account.invoice.line</field>
50             <field name="type">form</field>
51             <field name="arch" type="xml">
52                 <form string="Invoice Line" version="7.0">
53                     <group>
54                         <group>
55                             <field name="product_id" on_change="product_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.currency_id, context, parent.company_id)"/>
56                             <label for="quantity"/>
57                             <div>
58                                 <field name="quantity" class="oe_inline"/>
59                                 <field name="uos_id" class="oe_inline" groups="product.group_uom"
60                                   on_change="uos_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.currency_id, context, parent.company_id)"/>
61                             </div>
62                             <field name="price_unit"/>
63                             <field name="discount" groups="sale.group_discount_per_so_line"/>
64                         </group>
65                         <group>
66                             <field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id" on_change="onchange_account_id(product_id, parent.partner_id, parent.type, parent.fiscal_position,account_id)" groups="account.group_account_user"/>
67                             <field name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','=',False),('company_id', '=', parent.company_id)]" widget="many2many_tags"/>
68                             <field domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" name="account_analytic_id" groups="analytic.group_analytic_accounting"/>
69                             <field name="company_id" groups="base.group_multi_company" readonly="1"/>
70                         </group>
71                     </group>
72                     <label for="name"/>
73                     <field name="name"/>
74                 </form>
75             </field>
76         </record>
77
78         <record id="view_invoice_tax_tree" model="ir.ui.view">
79             <field name="name">account.invoice.tax.tree</field>
80             <field name="model">account.invoice.tax</field>
81             <field name="type">tree</field>
82             <field name="arch" type="xml">
83                 <tree string="Manual Invoice Taxes">
84                     <field name="sequence"/>
85                     <field name="manual"/>
86                     <field name="name"/>
87                     <field name="account_id" groups="base.group_account_user"/>
88                     <field name="base"/>
89                     <field name="amount"/>
90                 </tree>
91             </field>
92         </record>
93
94         <record id="view_invoice_tax_form" model="ir.ui.view">
95             <field name="name">account.invoice.tax.form</field>
96             <field name="model">account.invoice.tax</field>
97             <field name="type">form</field>
98             <field name="arch" type="xml">
99                 <form string="Manual Invoice Taxes" version="7.0">
100                     <group col="4">
101                         <field name="name"/>
102                         <field name="sequence"/>
103                         <field name="account_id" groups="account.group_account_user"/>
104                         <field name="account_analytic_id" domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" groups="analytic.group_analytic_accounting"/>
105                         <field name="manual"/>
106                         <field name="amount"/>
107                         <field name="base" readonly="0"/>
108                         <separator colspan="4" string="Tax Codes"/>
109                         <field name="base_code_id"/>
110                         <field name="base_amount"/>
111                         <field name="tax_code_id"/>
112                         <field name="tax_amount"/>
113                         <field name="factor_base" invisible="True"/>
114                         <field name="factor_tax" invisible="True"/>
115                     </group>
116                 </form>
117             </field>
118         </record>
119
120         <record id="invoice_tree" model="ir.ui.view">
121             <field name="name">account.invoice.tree</field>
122             <field name="model">account.invoice</field>
123             <field name="type">tree</field>
124             <field name="arch" type="xml">
125                 <tree colors="blue:state == 'draft';black:state in ('proforma','proforma2','open');gray:state == 'cancel'" string="Invoice">
126                     <field name="partner_id" groups="base.group_user"/>
127                     <field name="date_invoice"/>
128                     <field name="number"/>
129                     <field name="reference" invisible="1"/>
130                     <field name="name" invisible="1"/>
131                     <field name="journal_id" invisible="1"/>
132                     <field name="period_id" invisible="1" groups="account.group_account_user"/>
133                     <field name="company_id" groups="base.group_multi_company" widget="selection"/>
134                     <field name="user_id"/>
135                     <field name="date_due"/>
136                     <field name="origin"/>
137                     <field name="currency_id"/>
138                     <field name="residual" sum="Residual Amount"/>
139                     <field name="amount_untaxed" sum="Untaxed Amount"/>
140                     <field name="amount_total" sum="Total Amount"/>
141                     <field name="state"/>
142                 </tree>
143             </field>
144         </record>
145
146         <record id="invoice_supplier_form" model="ir.ui.view">
147             <field name="name">account.invoice.supplier.form</field>
148             <field name="model">account.invoice</field>
149             <field name="type">form</field>
150             <field name="priority">2</field>
151             <field name="arch" type="xml">
152                 <form version="7.0">
153                 <header>
154                     <span groups="base.group_user">
155                         <button name="invoice_open" states="draft,proforma2" string="Validate" class="oe_highlight"/>
156                         <button name="%(action_account_invoice_refund)d" type='action' string='Ask Refund' states='open,paid' />
157                         <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" groups="base.group_no_one"/>
158                         <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object"/>
159                         <button name='%(action_account_state_open)d' type='action' string='Re-Open' groups="account.group_account_invoice" attrs="{'invisible':['|', ('state','&lt;&gt;','paid'), ('reconciled', '=', True)]}" help="This button only appears when the state of the invoice is 'paid' (showing that it has been fully reconciled) and auto-computed boolean 'reconciled' is False (depicting that it's not the case anymore). In other words, the invoice has been dereconciled and it does not fit anymore the 'paid' state. You should press this button to re-open it and let it continue its normal process after having resolved the eventual exceptions it may have created."/>
160                     </span>
161                     <field name="state" widget="statusbar" statusbar_visible="draft,open,paid" statusbar_colors='{"proforma":"blue","proforma2":"blue"}'/>
162                 </header>
163                 <sheet string="Supplier Invoice">
164                     <div class="oe_title">
165                         <h1>
166                             <label string="Draft Invoice" attrs="{'invisible': [('state', '&lt;&gt;', 'draft')]}"/>
167                             <label string="Invoice" attrs="{'invisible': [('state', '=', 'draft')]}"/>
168                             <field name="number" class="oe_inline"  attrs="{'invisible': [('state', '=', 'draft')]}"/>
169                         </h1>
170                     </div>
171                     <field name="type" invisible="1"/>
172                     <group>
173                         <group>
174                             <field string="Supplier" name="partner_id"
175                               on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)"
176                               context="{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}"
177                               domain="[('supplier', '=', True)]"/>
178                             <field name="fiscal_position" widget="selection"/>
179                             <field name="origin"/>
180                                         <label for="reference_type"/>
181                                         <div>
182                                 <field name="reference_type" class="oe_inline oe_edit_only"/>
183                                 <field name="reference" class="oe_inline"/>
184                                         </div>
185                         </group>
186                         <group>
187                             <field name="date_invoice"/>
188                             <field name="date_due"/>
189                             <field domain="[('company_id', '=', company_id), ('type', '=', 'payable')]"
190                                 name="account_id" groups="account.group_account_user"/>
191                             <field name="journal_id" groups="account.group_account_user"
192                                 on_change="onchange_journal_id(journal_id, context)" widget="selection"/>
193                             <field name="currency_id"/>
194                         </group>
195                     </group>
196                     <notebook>
197                         <page string="Invoice">
198                             <field context="{'partner_id': partner_id, 'price_type': 'price_type' in dir() and price_type or False, 'type': type}" name="invoice_line">
199                                 <tree string="Invoice lines" editable="bottom">
200                                     <field name="product_id" on_change="product_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.currency_id, context, parent.company_id)"/>
201                                     <field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id" on_change="onchange_account_id(product_id,parent.partner_id,parent.type,parent.fiscal_position,account_id)" groups="base.group_account_user"/>
202                                     <field name="invoice_line_tax_id" view_mode="2" context="{'type':parent.type}" domain="[('parent_id','=',False)]"/>
203                                     <field domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" name="account_analytic_id" groups="analytic.group_analytic_accounting"/>
204                                     <field name="quantity"/>
205                                     <field name="price_unit"/>
206                                     <field name="price_subtotal"/>
207                                     <field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id" on_change="onchange_account_id(product_id,parent.partner_id,parent.type,parent.fiscal_position,account_id)" invisible="1"/>
208                                     <!-- Removed if subtotal is set -->
209                                     <field name="name" invisible="1"/>
210                                     <field name="uos_id" invisible="1"/>
211                                 </tree>
212                             </field>
213                             <group class="oe_subtotal_footer oe_right">
214                                 <field name="amount_untaxed"/>
215                                 <div>
216                                     <label for="amount_tax"/>
217                                     <button name="button_reset_taxes" states="draft,proforma2"
218                                         string="(update)" class="oe_link oe_edit_only"
219                                         type="object" help="Recompute taxes and total"/>
220                                 </div>
221                                 <field name="amount_tax" nolabel="1"/>
222                                 <field name="amount_total" class="oe_subtotal_footer_separator"/>
223
224                                 <field name="residual"/>
225                                 <field name="reconciled" invisible="1"/>
226                             </group>
227                             <div style="width: 50%%">
228                                 <field name="tax_line">
229                                     <tree editable="bottom" string="Taxes">
230                                         <field name="name"/>
231                                         <field name="account_id" groups="account.group_account_invoice"/>
232                                         <field name="account_analytic_id" domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" groups="analytic.group_analytic_accounting"/>
233                                         <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
234                                         <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
235
236                                         <field invisible="True" name="base_amount"/>
237                                         <field invisible="True" name="tax_amount"/>
238                                         <field name="factor_base" invisible="True"/>
239                                         <field name="factor_tax" invisible="True"/>
240                                     </tree>
241                                 </field>
242                             </div>
243                             <div class="oe_clear">
244                                 <label for="comment"/>
245                             </div>
246                             <field name="comment"/>
247                         </page>
248                         <page string="Other Info">
249                             <group>
250                                 <group>
251                                     <field domain="[('partner_id', '=', partner_id)]" name="partner_bank_id" on_change="onchange_partner_bank(partner_bank_id)"/>
252                                     <field name="user_id"/>
253                                     <field name="name" invisible="1"/>
254                                     <field name="payment_term" widget="selection"/>
255                                 </group>
256                                 <group>
257                                     <field name="move_id" groups="account.group_account_user"/>
258                                     <field name="period_id" domain="[('state', '=', 'draft')]" groups="account.group_account_user" widget="selection"/>
259                                     <field name="company_id" on_change="onchange_company_id(company_id,partner_id,type,invoice_line,currency_id)" widget="selection" groups="base.group_multi_company"/>
260                                 </group>
261                             </group>
262                         </page>
263                         <page string="Payments">
264                             <field name="payment_ids">
265                                 <tree string="Payments">
266                                     <field name="date" string="Payment Date"/>
267                                     <field name="move_id"/>
268                                     <field name="ref"/>
269                                     <field name="name"/>
270                                     <field name="journal_id"/>
271                                     <field name="debit"/>
272                                     <field name="credit"/>
273                                     <field name="amount_currency"/>
274                                     <field name="currency_id"/>
275                                 </tree>
276                             </field>
277                         </page>
278                     </notebook>
279                 </sheet>
280                 <div class="oe_chatter">
281                     <field name="message_ids" widget="mail_thread"/>
282                 </div>
283                 </form>
284             </field>
285         </record>
286
287         <record id="invoice_form" model="ir.ui.view">
288             <field name="name">account.invoice.form</field>
289             <field name="model">account.invoice</field>
290             <field name="type">form</field>
291             <field name="arch" type="xml">
292                 <form version="7.0">
293                 <header>
294                     <span groups="base.group_user">
295                         <button name="action_invoice_sent" type="object" string="Send by Email" attrs="{'invisible':['|',('sent','=',True), ('state', '!=', 'open')]}" class="oe_highlight"/>
296                         <button name="invoice_print" string="Print Invoice" type="object" attrs="{'invisible':['|',('sent','=',True), ('state', '!=', 'open')]}" class="oe_highlight"/>
297                         <button name="action_invoice_sent" type="object" string="Send by Email" attrs="{'invisible':['|',('sent','=',False), ('state', '!=', 'open')]}"/>
298                         <button name="invoice_print" string="Print Invoice" type="object" attrs="{'invisible':['|',('sent','=',False), ('state', '!=', 'open')]}"/>
299                         <button name="invoice_open" states="draft" string="Validate" class="oe_highlight"/>
300                         <button name="invoice_open" states="proforma2" string="Validate"/>
301                         <button name="invoice_proforma2" states="draft" string="PRO-FORMA" groups="account.group_proforma_invoices"/>
302                         <button name="%(action_account_invoice_refund)d" type='action' string='Refund Invoice' states='paid'/>
303                         <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" groups="base.group_no_one"/>
304                         <button name="action_cancel_draft" states="cancel" string="Reset to Draft" type="object"/>
305                         <button name='%(action_account_state_open)d' type='action' string='Re-Open' groups="account.group_account_invoice" attrs="{'invisible':['|', ('state','&lt;&gt;','paid'), ('reconciled', '=', True)]}" help="This button only appears when the state of the invoice is 'paid' (showing that it has been fully reconciled) and auto-computed boolean 'reconciled' is False (depicting that it's not the case anymore). In other words, the invoice has been dereconciled and it does not fit anymore the 'paid' state. You should press this button to re-open it and let it continue its normal process after having resolved the eventual exceptions it may have created."/>
306                         <!--button name="%(account_invoices)d" string="Print Invoice" type="action" states="open,paid,proforma,sale,proforma2"/-->
307                     </span>
308                     <field name="state" widget="statusbar" nolabel="1" statusbar_visible="draft,open,paid" statusbar_colors='{"proforma":"blue","proforma2":"blue"}'/>
309                 </header>
310                 <sheet string="Invoice">
311                     <h1>
312                         <label string="Draft Invoice " attrs="{'invisible': [('state','not in',('draft',))]}"/>
313                         <label string="Pro Forma Invoice " attrs="{'invisible': [('state','not in',('proforma','proforma2'))]}"/>
314                         <label string="Invoice " attrs="{'invisible': [('state','in',('draft','proforma','proforma2'))]}"/>
315                         <field name="number" readonly="1" class="oe_inline"/>
316                     </h1>
317                     <field name="type" invisible="1"/>
318                     <group>
319                         <group>
320                             <field string="Customer" name="partner_id"
321                                 on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)"
322                                 groups="base.group_user" context="{'search_default_customer':1, 'show_address': 1}"
323                                 options='{"always_reload": true}'/>
324                             <field name="fiscal_position" widget="selection" />
325                         </group>
326                         <group>
327                             <field name="date_invoice"/>
328                             <field name="journal_id" groups="account.group_account_user"
329                                 on_change="onchange_journal_id(journal_id, context)" widget="selection"/>
330                             <field domain="[('company_id', '=', company_id),('type','=', 'receivable')]"
331                                 name="account_id" groups="account.group_account_user"/>
332
333                             <label for="currency_id"/>
334                             <div>
335                                 <field name="currency_id" class="oe_inline"/>
336                                 <!-- note fp: I don't think we need this feature ?
337                                 <button name="%(action_account_change_currency)d" type="action"
338                                   icon="terp-stock_effects-object-colorize"
339                                   attrs="{'invisible':[('state','!=','draft')]}"
340                                   groups="account.group_account_user"/> -->
341                             </div>
342                         </group>
343                     </group>
344                     <field name="sent" invisible="1"/>
345                     <notebook colspan="4">
346                         <page string="Invoice Lines">
347                             <field name="invoice_line" nolabel="1" widget="one2many_list" context="{'type': type}">
348                                 <tree string="Invoice Lines" editable="bottom">
349                                     <field name="invoice_line_tax_id" invisible="1"/>
350                                     <field name="product_id" on_change="product_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.currency_id, context, parent.company_id)"/>
351                                     <field name="name"/>
352                                     <field name="account_id" groups="account.group_account_user"
353                                         domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]"
354                                         on_change="onchange_account_id(product_id, parent.partner_id, parent.type, parent.fiscal_position,account_id)"/>
355                                     <field name="quantity"/>
356                                     <field name="uos_id" groups="product.group_uom"
357                                         on_change="uos_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.currency_id, context, parent.company_id)"/>
358                                     <field name="price_unit"/>
359                                     <field name="discount" groups="sale.group_discount_per_so_line"/>
360                                     <field name="price_subtotal"/>
361                                 </tree>
362                             </field>
363                             <group class="oe_subtotal_footer oe_right">
364                                 <field name="amount_untaxed"/>
365                                 <div>
366                                     <label for="amount_tax"/>
367                                     <button name="button_reset_taxes" states="draft,proforma2"
368                                         string="(update)" class="oe_link oe_edit_only"
369                                         type="object" help="Recompute taxes and total"/>
370                                 </div>
371                                 <field name="amount_tax" nolabel="1"/>
372                                 <field name="amount_total" class="oe_subtotal_footer_separator"/>
373                                 <field name="residual" groups="account.group_account_user"/>
374                                 <field name="reconciled" invisible="1"/>
375                             </group>
376                             <group>
377                                     <field name="payment_term" class="oe_inline"/>
378                             </group>
379                             <div class="oe_clear">
380                                 <label for="comment"/>
381                             </div>
382                             <field name="comment" class="oe_inline" placeholder="Additional notes..."/>
383                         </page>
384                         <page string="Other Info">
385                             <group col="4">
386                                 <group>
387                                     <field name="company_id" on_change="onchange_company_id(company_id,partner_id,type,invoice_line,currency_id)" widget="selection" groups="base.group_multi_company"/>
388                                     <field name="user_id" groups="base.group_user"/>
389                                     <field domain="[('partner_id.ref_companies', 'in', [company_id])]" name="partner_bank_id"/>
390                                     <field name="period_id" domain="[('state', '=', 'draft')]"
391                                         groups="account.group_account_manager"
392                                         string="Accounting Period"
393                                         placeholder="force period"/>
394                                     <field name="date_due"/>
395                                 </group>
396                                 <group>
397                                     <field name="origin" groups="base.group_user"/>
398                                     <field name="name" string="Customer Reference"/>
399                                     <field name="move_id" groups="account.group_account_user"/>
400                                 </group>
401                             </group>
402                             <field name="tax_line">
403                                 <tree editable="bottom" string="Taxes">
404                                     <field name="name"/>
405                                     <field name="account_id" groups="account.group_account_user"/>
406                                     <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
407                                     <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
408                                     <field invisible="True" name="base_amount"/>
409                                     <field invisible="True" name="tax_amount"/>
410                                     <field name="factor_base" invisible="True"/>
411                                     <field name="factor_tax" invisible="True"/>
412                                 </tree>
413                             </field>
414                         </page>
415                         <page string="Payments" groups="base.group_user">
416                             <field name="payment_ids">
417                                 <tree string="Payments">
418                                     <field name="date"/>
419                                     <field name="move_id"/>
420                                     <field name="ref"/>
421                                     <field name="name"/>
422                                     <field name="journal_id" groups="base.group_user"/>
423                                     <field name="debit"/>
424                                     <field name="credit"/>
425                                     <field name="amount_currency"/>
426                                     <field name="currency_id"/>
427                                 </tree>
428                             </field>
429                         </page>
430                     </notebook>
431                 </sheet>
432                 <div class="oe_chatter">
433                     <field name="message_ids" colspan="4" widget="mail_thread" nolabel="1"/>
434                 </div>
435                 </form>
436             </field>
437         </record>
438
439         <record id="view_account_invoice_filter" model="ir.ui.view">
440             <field name="name">account.invoice.select</field>
441             <field name="model">account.invoice</field>
442             <field name="type">search</field>
443             <field name="arch" type="xml">
444                 <search string="Search Invoice">
445                     <field name="number" string="Invoice" filter_domain="['|', ('number','ilike',self),('origin','ilike',self)]"/>
446                     <filter name="draft" icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
447                     <filter name="proforma" icon="terp-gtk-media-pause" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices" groups="account.group_proforma_invoices"/>
448                     <filter name="invoices" icon="terp-dolar" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Proforma/Open/Paid Invoices"/>
449                     <filter name="unpaid" icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
450                     <separator/>
451                     <filter domain="[('user_id','=',uid)]" help="My Invoices" icon="terp-personal"/>
452                     <field name="partner_id"/>
453                     <field name="user_id" string="Salesperson"/>
454                     <field name="journal_id"/>
455                     <field name="period_id" string="Period"/>
456                     <group expand="0" string="Group By...">
457                         <filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
458                         <filter string="Responsible" icon="terp-personal" domain="[]"  context="{'group_by':'user_id'}"/>
459                         <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
460                         <filter string="Status" icon="terp-stock_effects-object-colorize" domain="[]"  context="{'group_by':'state'}"/>
461                         <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
462                         <filter string="Invoice Date" icon="terp-go-month" domain="[]"  context="{'group_by':'date_invoice'}"/>
463                         <filter string="Due Date" icon="terp-go-month" domain="[]"  context="{'group_by':'date_due'}"/>
464                     </group>
465                </search>
466             </field>
467         </record>
468
469         <record id="action_invoice_tree" model="ir.actions.act_window">
470             <field name="name">Invoices</field>
471             <field name="res_model">account.invoice</field>
472             <field name="view_type">form</field>
473             <field name="view_mode">tree,form,calendar,graph</field>
474             <field name="view_id" ref="invoice_tree"/>
475             <field name="context">{'type':'out_invoice'}</field>
476             <field name="search_view_id" ref="view_account_invoice_filter"/>
477         </record>
478
479         <record id="action_invoice_tree_pending_invoice" model="ir.actions.act_window">
480             <field name="name">Pending Invoice</field>
481             <field name="res_model">account.invoice</field>
482             <field name="view_type">form</field>
483             <field name="view_mode">tree,form,calendar,graph</field>
484             <field name="view_id" ref="invoice_tree"/>
485             <field name="context">{'type':'out_invoice'}</field>
486             <field name="domain">[('state','=','draft')]</field>
487            <!-- <field name="search_view_id" ref="view_account_invoice_filter"/>-->
488         </record>
489
490         <record id="action_invoice_tree_view1" model="ir.actions.act_window.view">
491             <field eval="1" name="sequence"/>
492             <field name="view_mode">tree</field>
493             <field name="act_window_id" ref="action_invoice_tree"/>
494         </record>
495
496         <record id="action_invoice_tree_view2" model="ir.actions.act_window.view">
497             <field eval="2" name="sequence"/>
498             <field name="view_mode">form</field>
499             <field name="view_id" ref="invoice_form"/>
500             <field name="act_window_id" ref="action_invoice_tree"/>
501         </record>
502
503         <record id="action_invoice_tree1" model="ir.actions.act_window">
504             <field name="name">Customer Invoices</field>
505             <field name="res_model">account.invoice</field>
506             <field name="view_type">form</field>
507             <field name="view_mode">tree,form,calendar,graph</field>
508             <field eval="False" name="view_id"/>
509             <field name="domain">[('type','=','out_invoice')]</field>
510             <field name="context">{'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'}</field>
511             <field name="search_view_id" ref="view_account_invoice_filter"/>
512             <field name="help" type="html">
513               <p class="oe_view_nocontent_create">
514                 Click to create a customer invoice.
515               </p><p>
516                 OpenERP's electronic invoicing allows to ease and fasten the
517                 collection of customer payments. Your customer receives the
518                 invoice by email and he can pay online and/or import it
519                 in his own system.
520               </p><p>
521                 The discussions with your customer are automatically displayed at
522                 the bottom of each invoice.
523               </p>
524             </field>
525         </record>
526
527
528         <record id="action_invoice_tree1_view1" model="ir.actions.act_window.view">
529             <field eval="1" name="sequence"/>
530             <field name="view_mode">tree</field>
531             <field name="act_window_id" ref="action_invoice_tree1"/>
532         </record>
533
534         <record id="action_invoice_tree1_view2" model="ir.actions.act_window.view">
535             <field eval="2" name="sequence"/>
536             <field name="view_mode">form</field>
537             <field name="view_id" ref="invoice_form"/>
538             <field name="act_window_id" ref="action_invoice_tree1"/>
539         </record>
540
541         <menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="menu_finance_receivables"/>
542
543         <record id="action_invoice_tree2" model="ir.actions.act_window">
544             <field name="name">Supplier Invoices</field>
545             <field name="res_model">account.invoice</field>
546             <field name="view_type">form</field>
547             <field name="view_mode">tree,form,calendar,graph</field>
548             <field eval="False" name="view_id"/>
549             <field name="domain">[('type','=','in_invoice')]</field>
550             <field name="context">{'default_type': 'in_invoice', 'type': 'in_invoice', 'journal_type': 'purchase'}</field>
551             <field name="search_view_id" ref="view_account_invoice_filter"/>
552             <field name="help" type="html">
553               <p class="oe_view_nocontent_create">
554                 Click to record a new supplier invoice.
555               </p><p>
556                 You can control the invoice from your supplier according to
557                 what you purchased or received. OpenERP can also generate
558                 draft invoices automatically from purchase orders or receipts.
559               </p>
560             </field>
561         </record>
562         <menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="menu_finance_payables"/>
563
564         <record id="action_invoice_tree3" model="ir.actions.act_window">
565             <field name="name">Customer Refunds</field>
566             <field name="res_model">account.invoice</field>
567             <field name="view_type">form</field>
568             <field name="view_mode">tree,form,calendar,graph</field>
569             <field eval="False" name="view_id"/>
570             <field name="domain">[('type','=','out_refund')]</field>
571             <field name="context">{'default_type':'out_refund', 'type':'out_refund', 'journal_type': 'sale_refund'}</field>
572             <field name="search_view_id" ref="view_account_invoice_filter"/>
573             <field name="help" type="html">
574               <p class="oe_view_nocontent_create">
575                 Click to create a customer refund. 
576               </p><p>
577                 A refund is a document that credits an invoice completely or
578                 partially.
579               </p><p>
580                 Instead of manually creating a customer refund, you
581                 can generate it directly from the related customer invoice.
582               </p>
583             </field>
584         </record>
585
586         <record id="action_invoice_tree3_view1" model="ir.actions.act_window.view">
587             <field eval="1" name="sequence"/>
588             <field name="view_mode">tree</field>
589             <field name="act_window_id" ref="action_invoice_tree3"/>
590         </record>
591
592         <record id="action_invoice_tree3_view2" model="ir.actions.act_window.view">
593             <field eval="2" name="sequence"/>
594             <field name="view_mode">form</field>
595             <field name="view_id" ref="invoice_form"/>
596             <field name="act_window_id" ref="action_invoice_tree3"/>
597         </record>
598         <menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="menu_finance_receivables"/>
599
600         <record id="action_invoice_tree4" model="ir.actions.act_window">
601             <field name="name">Supplier Refunds</field>
602             <field name="res_model">account.invoice</field>
603             <field name="view_type">form</field>
604             <field name="view_mode">tree,form,calendar,graph</field>
605             <field eval="False" name="view_id"/>
606             <field name="domain">[('type','=','in_refund')]</field>
607             <field name="context">{'default_type': 'in_refund', 'type': 'in_refund', 'journal_type': 'purchase_refund'}</field>
608             <field name="search_view_id" ref="view_account_invoice_filter"/>
609             <field name="help" type="html">
610               <p class="oe_view_nocontent_create">
611                 Click to register a refund you received from a supplier.
612               </p><p>
613                 Instead of creating the supplier refund manually, you can generate
614                 refunds and reconcile them directly from the related supplier invoice.
615               </p>
616             </field>
617         </record>
618         <menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
619
620         <act_window context="{'search_default_partner_id':[active_id], 'default_partner_id': active_id}" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
621
622         <act_window
623            id="act_account_journal_2_account_invoice_opened"
624            name="Unpaid Invoices"
625            context="{'search_default_journal_id': [active_id], 'search_default_unpaid':1, 'default_journal_id': active_id}"
626            res_model="account.invoice"
627            src_model="account.journal"/>
628
629     </data>
630 </openerp>