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)]" name="account_analytic_id" groups="base.group_user,base.group_extended"/>
67 <field name="price_subtotal"/>
69 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
70 <field colspan="4" name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','=',False),('company_id', '=', parent.company_id)]"/>
73 <field colspan="4" name="note" nolabel="1"/>
80 <record id="view_invoice_tax_tree" model="ir.ui.view">
81 <field name="name">account.invoice.tax.tree</field>
82 <field name="model">account.invoice.tax</field>
83 <field name="type">tree</field>
84 <field name="arch" type="xml">
85 <tree string="Manual Invoice Taxes">
86 <field name="sequence"/>
87 <field name="manual"/>
89 <field name="account_id" groups="base.group_user"/>
91 <field name="amount"/>
96 <record id="view_invoice_tax_form" model="ir.ui.view">
97 <field name="name">account.invoice.tax.form</field>
98 <field name="model">account.invoice.tax</field>
99 <field name="type">form</field>
100 <field name="arch" type="xml">
101 <form string="Manual Invoice Taxes">
103 <field name="sequence"/>
104 <field name="account_id" groups="base.group_user"/>
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"/>
117 <record id="invoice_tree" model="ir.ui.view">
118 <field name="name">account.invoice.tree</field>
119 <field name="model">account.invoice</field>
120 <field name="type">tree</field>
121 <field name="arch" type="xml">
122 <tree colors="blue:state in ('draft');black:state in ('proforma','proforma2','open');gray:state in ('paid','cancel')" string="Invoice">
123 <field name="date_invoice"/>
124 <field name="number"/>
125 <field name="partner_id" groups="base.group_user"/>
127 <field name="journal_id" invisible="1"/>
128 <field name="period_id" invisible="1"/>
129 <field name="company_id" groups="base.group_multi_company" widget="selection"/>
130 <field name="user_id"/>
131 <field name="date_due"/>
132 <field name="origin"/>
133 <field name="currency_id"/>
134 <field name="residual" sum="Residual Amount"/>
135 <field name="amount_untaxed" sum="Untaxed Amount"/>
136 <field name="amount_total" sum="Total Amount"/>
137 <field name="state"/>
139 <button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
140 <button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="gtk-ok"/>
141 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
142 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
143 <button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='open,paid' icon="gtk-execute"/>
148 <record id="invoice_supplier_form" model="ir.ui.view">
149 <field name="name">account.invoice.supplier.form</field>
150 <field name="model">account.invoice</field>
151 <field name="type">form</field>
152 <field name="priority">2</field>
153 <field name="arch" type="xml">
154 <form string="Supplier invoice">
155 <group col="8" colspan="4">
156 <field domain="[('type', '=', 'purchase')]" name="journal_id"/>
157 <field name="number" readonly="1"/>
158 <field name="type" invisible="1"/>
159 <field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
160 <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}"/>
162 <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}"/>
163 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
164 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
166 <field name="date_invoice"/>
167 <field name="period_id" groups="base.group_user"/>
168 <group colspan="2" col="1" groups="base.group_user">
169 <label align="0.0" string="(keep empty to use the current period)"/>
172 <notebook colspan="4">
173 <page string="Invoice">
174 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="base.group_user"/>
175 <field name="reference_type" nolabel="1" size="0"/>
176 <field name="reference" nolabel="1"/>
177 <field name="date_due"/>
178 <field name="check_total" required="2"/>
179 <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">
180 <tree string="Invoice lines">
181 <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})"/>
182 <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)"/>
183 <field name="invoice_line_tax_id" view_mode="2" context="{'type':parent.type}" domain="[('parent_id','=',False)]"/>
184 <field domain="[('type','<>','view'), ('company_id', '=', parent.company_id)]" name="account_analytic_id"/>
185 <field name="quantity"/>
186 <field name="price_unit"/>
187 <!-- Removed if subtotal is set -->
188 <field name="price_subtotal"/>
190 <field invisible="True" name="uos_id"/>
193 <group col="1" colspan="2">
194 <field name="tax_line" nolabel="1">
195 <tree editable="bottom" string="Taxes">
197 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
198 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
200 <field invisible="True" name="base_amount"/>
201 <field invisible="True" name="tax_amount"/>
205 <group col="4" colspan="2">
206 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" icon="terp-stock_format-scientific"/>
207 <field name="amount_untaxed"/>
208 <label string="" colspan="2"/>
209 <field name="amount_tax"/>
210 <field name="reconciled"/>
211 <field name="amount_total"/>
212 <field name="state"/>
213 <field name="residual"/>
214 <group col="6" colspan="4">
215 <button name="invoice_open" states="draft,proforma2" string="Approve" icon="terp-camera_test"/>
216 <button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='open,paid' icon="gtk-execute"/>
217 <button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="gtk-ok"/>
218 <button name="%(action_account_state_open)d" type='action' string='Re-Open' states='paid' icon="gtk-convert"/>
219 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
220 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
224 <page string="Other Info">
225 <field domain="[('partner_id', '=', partner_id)]" name="partner_bank_id" on_change="onchange_partner_bank(partner_bank_id)"/>
227 <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"/>
229 <field name="payment_term" widget="selection"/>
232 <field name="origin" groups="base.group_extended"/>
233 <field domain="[('partner_id','=',partner_id)]" name="address_contact_id" groups="base.group_extended"/>
234 <field name="user_id"/>
235 <field name="move_id"/>
236 <separator colspan="4" string="Additional Information"/>
237 <field colspan="4" name="comment" nolabel="1"/>
239 <page string="Payments" groups="base.group_extended">
240 <field name="payment_ids" colspan="4" nolabel="1" >
241 <tree string="Payments">
245 <field name="journal_id"/>
246 <field name="debit"/>
247 <field name="credit"/>
248 <field name="amount_currency"/>
249 <field name="currency_id"/>
258 <record id="invoice_form" model="ir.ui.view">
259 <field name="name">account.invoice.form</field>
260 <field name="model">account.invoice</field>
261 <field name="type">form</field>
262 <field name="arch" type="xml">
263 <form string="Invoice">
264 <group colspan="4" col="8">
265 <field name="journal_id" groups="base.group_user"/>
266 <field name="number"/>
267 <field name="type" invisible="1"/>
268 <field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
269 <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}"/>
271 <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"/>
272 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
273 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
275 <field name="date_invoice"/>
276 <field name="period_id" groups="base.group_user"/>
277 <group colspan="2" col="1" groups="base.group_user">
278 <label align="0.0" string="(keep empty to use the current period)"/>
281 <notebook colspan="4">
282 <page string="Invoice">
283 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="base.group_user"/>
285 <field name="payment_term" widget="selection"/>
286 <field colspan="4" name="invoice_line" nolabel="1" widget="one2many_list"/>
287 <group col="1" colspan="2">
288 <field name="tax_line" nolabel="1">
289 <tree editable="bottom" string="Taxes">
291 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
292 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
293 <field invisible="True" name="base_amount"/>
294 <field invisible="True" name="tax_amount"/>
298 <group col="4" colspan="2">
299 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" groups="base.group_user" icon="terp-stock_format-scientific"/>
300 <field name="amount_untaxed"/>
301 <label string="" colspan="2"/>
302 <field name="amount_tax"/>
303 <field name="reconciled"/>
304 <field name="amount_total"/>
305 <field name="state"/>
306 <field name="residual"/>
307 <group col="7" colspan="4" groups="base.group_user">
308 <button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-check"/>
309 <button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-document-new"/>
310 <button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='open,paid' icon="gtk-execute"/>
311 <button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="gtk-ok"/>
312 <button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert"/>
313 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
314 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
318 <page string="Other Info">
319 <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"/>
321 <field name="date_due"/>
322 <field name="user_id"/>
324 <field domain="[('partner_id.ref_companies', 'in', [company_id])]" name="partner_bank_id"
325 groups="base.group_extended"/>
326 <field name="origin"/>
327 <field colspan="4" domain="[('partner_id','=',partner_id)]" name="address_contact_id"
328 groups="base.group_extended"/>
329 <field name="move_id" groups="base.group_user"/>
330 <separator colspan="4" string="Additionnal Information"/>
331 <field colspan="4" name="comment" nolabel="1"/>
333 <page string="Payments">
334 <field name="payment_ids" colspan="4" nolabel="1">
335 <tree string="Payments">
339 <field name="journal_id" groups="base.group_user"/>
340 <field name="debit"/>
341 <field name="credit"/>
342 <field name="amount_currency"/>
343 <field name="currency_id"/>
352 <record id="view_account_invoice_filter" model="ir.ui.view">
353 <field name="name">account.invoice.select</field>
354 <field name="model">account.invoice</field>
355 <field name="type">search</field>
356 <field name="arch" type="xml">
357 <search string="Search Invoice">
358 <group col="10" colspan="4">
359 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
360 <filter icon="terp-check" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
361 <filter icon="terp-check" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Invoices"/>
362 <separator orientation="vertical"/>
363 <filter icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
364 <separator orientation="vertical"/>
365 <field name="number"/>
366 <field name="partner_id"/>
367 <field name="user_id" select="1" default="uid" widget="selection" string="Responsible">
368 <filter domain="[('user_id','=',uid)]" help="Responsible" icon="terp-partner" separator="1"/>
370 <field name="origin"/>
371 <field name="amount_total"/>
374 <group col="10" colspan="4">
375 <field name="journal_id" widget="selection" select='1'/>
376 <field name="period_id" select='1'/>
379 <group expand="0" string="Group By...">
380 <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
381 <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
382 <separator orientation="vertical"/>
383 <filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
384 <filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
385 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
386 <separator orientation="vertical"/>
387 <filter string="Invoice Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_invoice'}"/>
388 <filter string="Due Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_due'}"/>
394 <record id="action_invoice_tree" model="ir.actions.act_window">
395 <field name="name">Invoices</field>
396 <field name="res_model">account.invoice</field>
397 <field name="view_type">form</field>
398 <field name="view_mode">tree,form,calendar,graph</field>
399 <field name="view_id" ref="invoice_tree"/>
400 <field name="context">{'type':'out_invoice'}</field>
401 <field name="search_view_id" ref="view_account_invoice_filter"/>
404 <record id="action_invoice_tree_pending_invoice" model="ir.actions.act_window">
405 <field name="name">Pending Invoice</field>
406 <field name="res_model">account.invoice</field>
407 <field name="view_type">form</field>
408 <field name="view_mode">tree,form,calendar,graph</field>
409 <field name="view_id" ref="invoice_tree"/>
410 <field name="context">{'type':'out_invoice'}</field>
411 <field name="domain">[('state','=','draft')]</field>
412 <!-- <field name="search_view_id" ref="view_account_invoice_filter"/>-->
415 <record id="action_invoice_tree_view1" model="ir.actions.act_window.view">
416 <field eval="1" name="sequence"/>
417 <field name="view_mode">tree</field>
418 <field name="act_window_id" ref="action_invoice_tree"/>
421 <record id="action_invoice_tree_view2" model="ir.actions.act_window.view">
422 <field eval="2" name="sequence"/>
423 <field name="view_mode">form</field>
424 <field name="view_id" ref="invoice_form"/>
425 <field name="act_window_id" ref="action_invoice_tree"/>
427 <!-- <menuitem name="Invoices" id="menu_finance_invoice" parent="account.menu_finance" sequence="2"/>-->
429 <record id="action_invoice_tree1" model="ir.actions.act_window">
430 <field name="name">Customer Invoices</field>
431 <field name="res_model">account.invoice</field>
432 <field name="view_type">form</field>
433 <field name="view_mode">tree,form,calendar,graph</field>
434 <field eval="False" name="view_id"/>
435 <field name="domain">[('type','=','out_invoice')]</field>
436 <field name="context">{'type':'out_invoice'}</field>
437 <field name="search_view_id" ref="view_account_invoice_filter"/>
438 <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>
441 <record id="action_invoice_tree1_view1" model="ir.actions.act_window.view">
442 <field eval="1" name="sequence"/>
443 <field name="view_mode">tree</field>
444 <field name="act_window_id" ref="action_invoice_tree1"/>
447 <record id="action_invoice_tree1_view2" model="ir.actions.act_window.view">
448 <field eval="2" name="sequence"/>
449 <field name="view_mode">form</field>
450 <field name="view_id" ref="invoice_form"/>
451 <field name="act_window_id" ref="action_invoice_tree1"/>
453 <menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="menu_finance_receivables"/>
455 <record id="action_invoice_tree2" model="ir.actions.act_window">
456 <field name="name">Vendor Invoices</field>
457 <field name="res_model">account.invoice</field>
458 <field name="view_type">form</field>
459 <field name="view_mode">tree,form,calendar,graph</field>
460 <field eval="False" name="view_id"/>
461 <field name="domain">[('type','=','in_invoice')]</field>
462 <field name="context">{'type':'in_invoice'}</field>
463 <field name="search_view_id" ref="view_account_invoice_filter"/>
464 <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>
466 <menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="menu_finance_payables"/>
468 <record id="action_invoice_tree3" model="ir.actions.act_window">
469 <field name="name">Customer Refunds</field>
470 <field name="res_model">account.invoice</field>
471 <field name="view_type">form</field>
472 <field name="view_mode">tree,form,calendar,graph</field>
473 <field eval="False" name="view_id"/>
474 <field name="domain">[('type','=','out_refund')]</field>
475 <field name="context">{'type':'out_refund'}</field>
476 <field name="search_view_id" ref="view_account_invoice_filter"/>
477 <field name="help">A customer refund is a credit note to your customer that cancel invoice or a part of it.</field>
480 <record id="action_invoice_tree3_view1" model="ir.actions.act_window.view">
481 <field eval="1" name="sequence"/>
482 <field name="view_mode">tree</field>
483 <field name="act_window_id" ref="action_invoice_tree3"/>
486 <record id="action_invoice_tree3_view2" model="ir.actions.act_window.view">
487 <field eval="2" name="sequence"/>
488 <field name="view_mode">form</field>
489 <field name="view_id" ref="invoice_form"/>
490 <field name="act_window_id" ref="action_invoice_tree3"/>
492 <menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="menu_finance_receivables"/>
494 <record id="action_invoice_tree4" model="ir.actions.act_window">
495 <field name="name">Vendor Refunds</field>
496 <field name="res_model">account.invoice</field>
497 <field name="view_type">form</field>
498 <field name="view_mode">tree,form,calendar,graph</field>
499 <field eval="False" name="view_id"/>
500 <field name="domain">[('type','=','in_refund')]</field>
501 <field name="context">{'type':'in_refund'}</field>
502 <field name="search_view_id" ref="view_account_invoice_filter"/>
503 <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>
505 <menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
507 <act_window domain="[('partner_id','=',active_id)]" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
509 <act_window domain="[('journal_id','=',active_id),('state','!=','draft'),('reconciled','=',False)]" id="act_account_journal_2_account_invoice_opened" name="Unpaid invoices" res_model="account.invoice" src_model="account.journal"/>
511 <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"/>
513 <act_window domain="[('partner_id', '=', partner_id), ('account_id.type', 'in', ['receivable', 'payable']), ('reconcile_id','=',False)]" id="act_account_invoice_account_move_unreconciled" name="Unreconciled Entries" res_model="account.move.line" src_model="account.invoice"/>