1 <?xml version="1.0" encoding="utf-8"?>
8 <record id="view_invoice_line_calendar" model="ir.ui.view">
9 <field name="name">account.invoice.calendar</field>
10 <field name="model">account.invoice</field>
11 <field name="type">calendar</field>
12 <field name="arch" type="xml">
13 <calendar string="Invoices" color="journal_id" date_start="date_invoice">
14 <field name="partner_id"/>
15 <field name="amount_total"/>
20 <record model="ir.ui.view" id="view_invoice_graph">
21 <field name="name">account.invoice.graph</field>
22 <field name="model">account.invoice</field>
23 <field name="type">graph</field>
24 <field name="arch" type="xml">
25 <graph string="Invoices" type="bar">
26 <field name="partner_id"/>
27 <field name="amount_total" operator="+"/>
32 <record id="view_invoice_line_tree" model="ir.ui.view">
33 <field name="name">account.invoice.line.tree</field>
34 <field name="model">account.invoice.line</field>
35 <field name="type">tree</field>
36 <field name="arch" type="xml">
37 <tree string="Invoice Line">
39 <field name="account_id" groups="base.group_user"/>
40 <field name="quantity"/>
41 <field name="uos_id"/>
42 <field name="price_unit"/>
43 <field name="discount"/>
44 <field name="price_subtotal"/>
49 <record id="view_invoice_line_form" model="ir.ui.view">
50 <field name="name">account.invoice.line.form</field>
51 <field name="model">account.invoice.line</field>
52 <field name="type">form</field>
53 <field name="arch" type="xml">
54 <form string="Invoice Line">
57 <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.address_invoice_id, parent.currency_id, {'company_id': parent.company_id})"/>
58 <field name="uos_id" widget="selection" on_change="uos_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.address_invoice_id, parent.currency_id, {'company_id': parent.company_id})"/>
59 <field name="quantity"/>
60 <field name="price_unit"/>
61 <field name="discount"/>
62 <field colspan="4" name="name"/>
63 <field colspan="4" name="origin" groups="base.group_extended"/>
64 <field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '<>', 'view')]" name="account_id" on_change="onchange_account_id(parent.fiscal_position,account_id)" groups="base.group_user"/>
65 <field domain="[('type','<>','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" name="account_analytic_id" groups="base.group_extended"/>
67 <field name="price_subtotal"/>
68 <field name="company_id" groups="base.group_multi_company" readonly="1"/>
69 <field colspan="4" name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','=',False),('company_id', '=', parent.company_id)]"/>
72 <field colspan="4" name="note" nolabel="1"/>
79 <record id="view_invoice_tax_tree" model="ir.ui.view">
80 <field name="name">account.invoice.tax.tree</field>
81 <field name="model">account.invoice.tax</field>
82 <field name="type">tree</field>
83 <field name="arch" type="xml">
84 <tree string="Manual Invoice Taxes">
85 <field name="sequence"/>
86 <field name="manual"/>
88 <field name="account_id" groups="base.group_user"/>
90 <field name="amount"/>
95 <record id="view_invoice_tax_form" model="ir.ui.view">
96 <field name="name">account.invoice.tax.form</field>
97 <field name="model">account.invoice.tax</field>
98 <field name="type">form</field>
99 <field name="arch" type="xml">
100 <form string="Manual Invoice Taxes">
102 <field name="sequence"/>
103 <field name="account_id" groups="base.group_user"/>
104 <field name="manual"/>
105 <field name="amount"/>
106 <field name="base" readonly="0"/>
107 <separator colspan="4" string="Tax codes"/>
108 <field name="base_code_id"/>
109 <field name="base_amount"/>
110 <field name="tax_code_id"/>
111 <field name="tax_amount"/>
116 <record id="invoice_tree" model="ir.ui.view">
117 <field name="name">account.invoice.tree</field>
118 <field name="model">account.invoice</field>
119 <field name="type">tree</field>
120 <field name="arch" type="xml">
121 <tree colors="blue:state in ('draft');black:state in ('proforma','proforma2','open');gray:state in ('cancel')" string="Invoice">
122 <field name="date_invoice"/>
123 <field name="number"/>
124 <field name="partner_id" groups="base.group_user"/>
126 <field name="journal_id" invisible="1"/>
127 <field name="period_id" invisible="1" groups="account.group_account_user"/>
128 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
129 <field name="user_id"/>
130 <field name="date_due"/>
131 <field name="origin"/>
132 <field name="currency_id"/>
133 <field name="residual" sum="Residual Amount"/>
134 <field name="amount_untaxed" sum="Untaxed Amount"/>
135 <field name="amount_total" sum="Total Amount"/>
136 <field name="state"/>
138 <button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
143 <record id="invoice_supplier_form" model="ir.ui.view">
144 <field name="name">account.invoice.supplier.form</field>
145 <field name="model">account.invoice</field>
146 <field name="type">form</field>
147 <field name="priority">2</field>
148 <field name="arch" type="xml">
149 <form string="Supplier invoice">
150 <group col="8" colspan="4">
151 <field domain="[('type', '=', 'purchase')]" name="journal_id"/>
152 <field name="number" readonly="1"/>
153 <field name="type" invisible="1"/>
154 <field name="currency_id" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
155 <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}" groups="account.group_account_user"/>
157 <field name="partner_id" domain="[('supplier','=', 1)]" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)" context="{'default_customer': 0}"/>
158 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
159 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
161 <field name="date_invoice"/>
162 <field name="period_id" groups="account.group_account_user"/>
163 <group colspan="2" col="1" groups="account.group_account_user">
164 <label align="0.0" string="(keep empty to use the current period)"/>
167 <notebook colspan="4">
168 <page string="Invoice">
169 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="account.group_account_user"/>
170 <field name="reference_type" nolabel="1" size="0"/>
171 <field name="reference" nolabel="1"/>
172 <field name="date_due"/>
173 <field name="check_total" required="2"/>
174 <field colspan="4" default_get="{'check_total': check_total, 'invoice_line': invoice_line, 'address_invoice_id': address_invoice_id, 'partner_id': partner_id, 'price_type': 'price_type' in dir() and price_type or False}" name="invoice_line" nolabel="1">
175 <tree string="Invoice lines">
176 <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.address_invoice_id, parent.currency_id, {'company_id': parent.company_id})"/>
177 <field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '<>', 'view')]" name="account_id" on_change="onchange_account_id(parent.fiscal_position,account_id)"/>
178 <field name="invoice_line_tax_id" view_mode="2" context="{'type':parent.type}" domain="[('parent_id','=',False)]"/>
179 <field domain="[('type','<>','view'), ('company_id', '=', parent.company_id), ('parent_id', '!=', False)]" name="account_analytic_id" groups="base.group_extended"/>
180 <field name="quantity"/>
181 <field name="price_unit"/>
182 <!-- Removed if subtotal is set -->
183 <field name="price_subtotal"/>
185 <field invisible="True" name="uos_id"/>
188 <group col="1" colspan="2">
189 <field name="tax_line" nolabel="1">
190 <tree editable="bottom" string="Taxes">
192 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
193 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
195 <field invisible="True" name="base_amount"/>
196 <field invisible="True" name="tax_amount"/>
200 <group col="4" colspan="2">
201 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" icon="terp-stock_format-scientific"/>
202 <field name="amount_untaxed"/>
203 <label string="" colspan="2"/>
204 <field name="amount_tax"/>
205 <field name="reconciled"/>
206 <field name="amount_total"/>
207 <field name="state"/>
208 <field name="residual"/>
209 <group col="6" colspan="4">
210 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
211 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
212 <button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
213 <button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
214 <button name="%(action_account_state_open)d" type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
218 <page string="Other Info">
219 <field domain="[('partner_id', '=', partner_id)]" name="partner_bank_id" on_change="onchange_partner_bank(partner_bank_id)"/>
221 <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"/>
223 <field name="payment_term" widget="selection"/>
226 <field name="origin" groups="base.group_extended"/>
227 <field domain="[('partner_id','=',partner_id)]" name="address_contact_id" groups="base.group_extended"/>
228 <field name="user_id"/>
229 <field name="move_id" groups="account.group_account_user"/>
230 <separator colspan="4" string="Additional Information"/>
231 <field colspan="4" name="comment" nolabel="1"/>
233 <page string="Payments" groups="base.group_extended">
234 <field name="payment_ids" colspan="4" nolabel="1" >
235 <tree string="Payments">
239 <field name="journal_id"/>
240 <field name="debit"/>
241 <field name="credit"/>
242 <field name="amount_currency"/>
243 <field name="currency_id"/>
252 <record id="invoice_form" model="ir.ui.view">
253 <field name="name">account.invoice.form</field>
254 <field name="model">account.invoice</field>
255 <field name="type">form</field>
256 <field name="arch" type="xml">
257 <form string="Invoice">
258 <group colspan="4" col="8">
259 <field name="journal_id" groups="base.group_user"/>
260 <field name="number"/>
261 <field name="type" invisible="1"/>
262 <field name="currency_id" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
263 <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}" groups="account.group_account_user"/>
265 <field name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)" groups="base.group_user"/>
266 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
267 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
269 <field name="date_invoice"/>
270 <field name="period_id" groups="account.group_account_user"/>
271 <group colspan="2" col="1" groups="account.group_account_user">
272 <label align="0.0" string="(keep empty to use the current period)"/>
275 <notebook colspan="4">
276 <page string="Invoice">
277 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="account.group_account_user"/>
279 <field name="payment_term" widget="selection"/>
280 <field colspan="4" name="invoice_line" nolabel="1" widget="one2many_list"/>
281 <group col="1" colspan="2">
282 <field name="tax_line" nolabel="1">
283 <tree editable="bottom" string="Taxes">
285 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
286 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
287 <field invisible="True" name="base_amount"/>
288 <field invisible="True" name="tax_amount"/>
292 <group col="4" colspan="2">
293 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" groups="base.group_user" icon="terp-stock_format-scientific"/>
294 <field name="amount_untaxed"/>
295 <label string="" colspan="2"/>
296 <field name="amount_tax"/>
297 <field name="reconciled"/>
298 <field name="amount_total"/>
299 <field name="state"/>
300 <field name="residual"/>
301 <group col="7" colspan="4" groups="base.group_user">
302 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
303 <button name="action_cancel_draft" states="cancel" string="Reset to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
305 <button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-gtk-media-pause" groups="account.group_account_user"/>
306 <button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-camera_test"/>
307 <button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
308 <button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
312 <page string="Other Info">
313 <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"/>
315 <field name="date_due"/>
316 <field name="user_id"/>
318 <field domain="[('partner_id.ref_companies', 'in', [company_id])]" name="partner_bank_id"
319 groups="base.group_extended"/>
320 <field name="origin"/>
321 <field colspan="4" domain="[('partner_id','=',partner_id)]" name="address_contact_id"
322 groups="base.group_extended"/>
323 <field name="move_id" groups="account.group_account_user"/>
324 <separator colspan="4" string="Additional Information"/>
325 <field colspan="4" name="comment" nolabel="1"/>
327 <page string="Payments">
328 <field name="payment_ids" colspan="4" nolabel="1">
329 <tree string="Payments">
333 <field name="journal_id" groups="base.group_user"/>
334 <field name="debit"/>
335 <field name="credit"/>
336 <field name="amount_currency"/>
337 <field name="currency_id"/>
346 <record id="view_account_invoice_filter" model="ir.ui.view">
347 <field name="name">account.invoice.select</field>
348 <field name="model">account.invoice</field>
349 <field name="type">search</field>
350 <field name="arch" type="xml">
351 <search string="Search Invoice">
352 <group col="10" colspan="4">
353 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
354 <filter icon="terp-gtk-media-pause" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
355 <filter icon="terp-camera_test" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Invoices"/>
356 <separator orientation="vertical"/>
357 <filter name="unpaid" icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
358 <separator orientation="vertical"/>
359 <field name="number"/>
360 <field name="partner_id"/>
361 <field name="user_id" select="1" default="uid" widget="selection" string="Salesman">
362 <filter domain="[('user_id','=',uid)]" help="My invoices" icon="terp-personal" separator="1"/>
364 <field name="origin"/>
365 <field name="amount_total"/>
368 <group col="10" colspan="4">
369 <field name="journal_id" widget="selection" select='1'/>
370 <field name="period_id" select='1' string="Period"/>
373 <group expand="0" string="Group By...">
374 <filter string="Partner" icon="terp-partner" domain="[]" context="{'group_by':'partner_id'}"/>
375 <filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
376 <separator orientation="vertical"/>
377 <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
378 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
379 <separator orientation="vertical"/>
380 <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
381 <filter string="Invoice Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_invoice'}"/>
382 <filter string="Due Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_due'}"/>
388 <record id="action_invoice_tree" model="ir.actions.act_window">
389 <field name="name">Invoices</field>
390 <field name="res_model">account.invoice</field>
391 <field name="view_type">form</field>
392 <field name="view_mode">tree,form,calendar,graph</field>
393 <field name="view_id" ref="invoice_tree"/>
394 <field name="context">{'type':'out_invoice'}</field>
395 <field name="search_view_id" ref="view_account_invoice_filter"/>
398 <record id="action_invoice_tree_pending_invoice" model="ir.actions.act_window">
399 <field name="name">Pending Invoice</field>
400 <field name="res_model">account.invoice</field>
401 <field name="view_type">form</field>
402 <field name="view_mode">tree,form,calendar,graph</field>
403 <field name="view_id" ref="invoice_tree"/>
404 <field name="context">{'type':'out_invoice'}</field>
405 <field name="domain">[('state','=','draft')]</field>
406 <!-- <field name="search_view_id" ref="view_account_invoice_filter"/>-->
409 <record id="action_invoice_tree_view1" model="ir.actions.act_window.view">
410 <field eval="1" name="sequence"/>
411 <field name="view_mode">tree</field>
412 <field name="act_window_id" ref="action_invoice_tree"/>
415 <record id="action_invoice_tree_view2" model="ir.actions.act_window.view">
416 <field eval="2" name="sequence"/>
417 <field name="view_mode">form</field>
418 <field name="view_id" ref="invoice_form"/>
419 <field name="act_window_id" ref="action_invoice_tree"/>
422 <record id="action_invoice_tree1" model="ir.actions.act_window">
423 <field name="name">Customer Invoices</field>
424 <field name="res_model">account.invoice</field>
425 <field name="view_type">form</field>
426 <field name="view_mode">tree,form,calendar,graph</field>
427 <field eval="False" name="view_id"/>
428 <field name="domain">[('type','=','out_invoice')]</field>
429 <field name="context">{'type':'out_invoice'}</field>
430 <field name="search_view_id" ref="view_account_invoice_filter"/>
431 <field name="help">Most of customer invoices are automatically generated in draft mode by OpenERP flows, following a purchase order for instance. Review, confirm or cancel, pay or refund your customers' invoices here. A manual invoice can be created here.</field>
434 <record id="action_invoice_tree1_view1" model="ir.actions.act_window.view">
435 <field eval="1" name="sequence"/>
436 <field name="view_mode">tree</field>
437 <field name="act_window_id" ref="action_invoice_tree1"/>
440 <record id="action_invoice_tree1_view2" model="ir.actions.act_window.view">
441 <field eval="2" name="sequence"/>
442 <field name="view_mode">form</field>
443 <field name="view_id" ref="invoice_form"/>
444 <field name="act_window_id" ref="action_invoice_tree1"/>
446 <menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="menu_finance_receivables"/>
448 <record id="action_invoice_tree2" model="ir.actions.act_window">
449 <field name="name">Vendor Invoices</field>
450 <field name="res_model">account.invoice</field>
451 <field name="view_type">form</field>
452 <field name="view_mode">tree,form,calendar,graph</field>
453 <field eval="False" name="view_id"/>
454 <field name="domain">[('type','=','in_invoice')]</field>
455 <field name="context">{'type':'in_invoice'}</field>
456 <field name="search_view_id" ref="view_account_invoice_filter"/>
457 <field name="help">Proposal for vendor invoices are usually automatically generate by OpenERP, following a procurement order or a production order for instance. To consult and to check for, or to manually create a customer invoice, use this menu. You can review, confirm or cancel, pay or refund an invoice from the view from of the invoices.</field>
459 <menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="menu_finance_payables"/>
461 <record id="action_invoice_tree3" model="ir.actions.act_window">
462 <field name="name">Customer Refunds</field>
463 <field name="res_model">account.invoice</field>
464 <field name="view_type">form</field>
465 <field name="view_mode">tree,form,calendar,graph</field>
466 <field eval="False" name="view_id"/>
467 <field name="domain">[('type','=','out_refund')]</field>
468 <field name="context">{'type':'out_refund'}</field>
469 <field name="search_view_id" ref="view_account_invoice_filter"/>
470 <field name="help">A customer refund is a credit note to your customer that cancel invoice or a part of it.</field>
473 <record id="action_invoice_tree3_view1" model="ir.actions.act_window.view">
474 <field eval="1" name="sequence"/>
475 <field name="view_mode">tree</field>
476 <field name="act_window_id" ref="action_invoice_tree3"/>
479 <record id="action_invoice_tree3_view2" model="ir.actions.act_window.view">
480 <field eval="2" name="sequence"/>
481 <field name="view_mode">form</field>
482 <field name="view_id" ref="invoice_form"/>
483 <field name="act_window_id" ref="action_invoice_tree3"/>
485 <menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="menu_finance_receivables"/>
487 <record id="action_invoice_tree4" model="ir.actions.act_window">
488 <field name="name">Vendor Refunds</field>
489 <field name="res_model">account.invoice</field>
490 <field name="view_type">form</field>
491 <field name="view_mode">tree,form,calendar,graph</field>
492 <field eval="False" name="view_id"/>
493 <field name="domain">[('type','=','in_refund')]</field>
494 <field name="context">{'type':'in_refund'}</field>
495 <field name="search_view_id" ref="view_account_invoice_filter"/>
496 <field name="help">A vendor refund is a credit note from your supplier indicating that he refunds part or totality of the invoice sent to you.</field>
498 <menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
500 <act_window context="{'search_default_partner_id':[active_id]}" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
503 id="act_account_journal_2_account_invoice_opened"
504 name="Unpaid Invoices"
505 context="{'search_default_journal_id':active_id, 'search_default_unpaid':1,}"
506 res_model="account.invoice"
507 src_model="account.journal"/>
509 <act_window domain="[('account_analytic_id', '=', active_id)]" id="act_account_analytic_account_2_account_invoice_line" name="Invoice lines" res_model="account.invoice.line" src_model="account.analytic.account"/>
512 domain="[('partner_id', '=', partner_id), ('account_id.reconcile', '=', True)]"
513 context="{'search_default_unreconciled':True}"
514 id="act_account_invoice_account_move_unreconciled"
515 name="Items to Reconcile"
516 res_model="account.move.line"
517 src_model="account.invoice"/>
520 domain="[('move_id', '=', move_id)]"
521 id="act_account_invoice_account_move_invoice_link"
523 res_model="account.move.line"
524 src_model="account.invoice"/>