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_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 ('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" groups="account.group_account_user"/>
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="terp-dolar_ok!"/>
145 <record id="invoice_supplier_form" model="ir.ui.view">
146 <field name="name">account.invoice.supplier.form</field>
147 <field name="model">account.invoice</field>
148 <field name="type">form</field>
149 <field name="priority">2</field>
150 <field name="arch" type="xml">
151 <form string="Supplier invoice">
152 <group col="8" colspan="4">
153 <field domain="[('type', '=', 'purchase')]" name="journal_id"/>
154 <field name="number" readonly="1"/>
155 <field name="type" invisible="1"/>
156 <field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
157 <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"/>
159 <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}"/>
160 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
161 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
163 <field name="date_invoice"/>
164 <field name="period_id" groups="account.group_account_user"/>
165 <group colspan="2" col="1" groups="account.group_account_user">
166 <label align="0.0" string="(keep empty to use the current period)"/>
169 <notebook colspan="4">
170 <page string="Invoice">
171 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="account.group_account_user"/>
172 <field name="reference_type" nolabel="1" size="0"/>
173 <field name="reference" nolabel="1"/>
174 <field name="date_due"/>
175 <field name="check_total" required="2"/>
176 <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">
177 <tree string="Invoice lines">
178 <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})"/>
179 <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)"/>
180 <field name="invoice_line_tax_id" view_mode="2" context="{'type':parent.type}" domain="[('parent_id','=',False)]"/>
181 <field domain="[('type','<>','view'), ('company_id', '=', parent.company_id)]" name="account_analytic_id" groups="base.group_extended"/>
182 <field name="quantity"/>
183 <field name="price_unit"/>
184 <!-- Removed if subtotal is set -->
185 <field name="price_subtotal"/>
187 <field invisible="True" name="uos_id"/>
190 <group col="1" colspan="2">
191 <field name="tax_line" nolabel="1">
192 <tree editable="bottom" string="Taxes">
194 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
195 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
197 <field invisible="True" name="base_amount"/>
198 <field invisible="True" name="tax_amount"/>
202 <group col="4" colspan="2">
203 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" icon="terp-stock_format-scientific"/>
204 <field name="amount_untaxed"/>
205 <label string="" colspan="2"/>
206 <field name="amount_tax"/>
207 <field name="reconciled"/>
208 <field name="amount_total"/>
209 <field name="state"/>
210 <field name="residual"/>
211 <group col="6" colspan="4">
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_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="terp-dolar_ok!"/>
215 <button name="%(action_account_state_open)d" type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
216 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
217 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
221 <page string="Other Info">
222 <field domain="[('partner_id', '=', partner_id)]" name="partner_bank_id" on_change="onchange_partner_bank(partner_bank_id)"/>
224 <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"/>
226 <field name="payment_term" widget="selection"/>
229 <field name="origin" groups="base.group_extended"/>
230 <field domain="[('partner_id','=',partner_id)]" name="address_contact_id" groups="base.group_extended"/>
231 <field name="user_id"/>
232 <field name="move_id" groups="account.group_account_user"/>
233 <separator colspan="4" string="Additional Information"/>
234 <field colspan="4" name="comment" nolabel="1"/>
236 <page string="Payments" groups="base.group_extended">
237 <field name="payment_ids" colspan="4" nolabel="1" >
238 <tree string="Payments">
242 <field name="journal_id"/>
243 <field name="debit"/>
244 <field name="credit"/>
245 <field name="amount_currency"/>
246 <field name="currency_id"/>
255 <record id="invoice_form" model="ir.ui.view">
256 <field name="name">account.invoice.form</field>
257 <field name="model">account.invoice</field>
258 <field name="type">form</field>
259 <field name="arch" type="xml">
260 <form string="Invoice">
261 <group colspan="4" col="8">
262 <field name="journal_id" groups="base.group_user"/>
263 <field name="number"/>
264 <field name="type" invisible="1"/>
265 <field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
266 <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"/>
268 <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"/>
269 <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
270 <field name="fiscal_position" groups="base.group_extended" widget="selection"/>
272 <field name="date_invoice"/>
273 <field name="period_id" groups="account.group_account_user"/>
274 <group colspan="2" col="1" groups="account.group_account_user">
275 <label align="0.0" string="(keep empty to use the current period)"/>
278 <notebook colspan="4">
279 <page string="Invoice">
280 <field domain="[('type','<>','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id" groups="account.group_account_user"/>
282 <field name="payment_term" widget="selection"/>
283 <field colspan="4" name="invoice_line" nolabel="1" widget="one2many_list"/>
284 <group col="1" colspan="2">
285 <field name="tax_line" nolabel="1">
286 <tree editable="bottom" string="Taxes">
288 <field name="base" on_change="base_change(base,parent.currency_id,parent.company_id,parent.date_invoice)" readonly="1"/>
289 <field name="amount" on_change="amount_change(amount,parent.currency_id,parent.company_id,parent.date_invoice)"/>
290 <field invisible="True" name="base_amount"/>
291 <field invisible="True" name="tax_amount"/>
295 <group col="4" colspan="2">
296 <button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" groups="base.group_user" icon="terp-stock_format-scientific"/>
297 <field name="amount_untaxed"/>
298 <label string="" colspan="2"/>
299 <field name="amount_tax"/>
300 <field name="reconciled"/>
301 <field name="amount_total"/>
302 <field name="state"/>
303 <field name="residual"/>
304 <group col="7" colspan="4" groups="base.group_user">
305 <button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-check" groups="account.group_account_user"/>
306 <button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-document-new"/>
307 <button name="%(action_account_invoice_refund)d" type='action' string='Refund' states='open,paid' icon="gtk-execute"/>
308 <button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="terp-dolar_ok!"/>
309 <button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert" groups="base.group_no_one"/>
310 <button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
311 <button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
315 <page string="Other Info">
316 <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"/>
318 <field name="date_due"/>
319 <field name="user_id"/>
321 <field domain="[('partner_id.ref_companies', 'in', [company_id])]" name="partner_bank_id"
322 groups="base.group_extended"/>
323 <field name="origin"/>
324 <field colspan="4" domain="[('partner_id','=',partner_id)]" name="address_contact_id"
325 groups="base.group_extended"/>
326 <field name="move_id" groups="account.group_account_user"/>
327 <separator colspan="4" string="Additional Information"/>
328 <field colspan="4" name="comment" nolabel="1"/>
330 <page string="Payments">
331 <field name="payment_ids" colspan="4" nolabel="1">
332 <tree string="Payments">
336 <field name="journal_id" groups="base.group_user"/>
337 <field name="debit"/>
338 <field name="credit"/>
339 <field name="amount_currency"/>
340 <field name="currency_id"/>
349 <record id="view_account_invoice_filter" model="ir.ui.view">
350 <field name="name">account.invoice.select</field>
351 <field name="model">account.invoice</field>
352 <field name="type">search</field>
353 <field name="arch" type="xml">
354 <search string="Search Invoice">
355 <group col="10" colspan="4">
356 <filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
357 <filter icon="terp-check" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
358 <filter icon="terp-check" string="Invoices" domain="[('state','not in',['draft','cancel'])]" help="Invoices"/>
359 <separator orientation="vertical"/>
360 <filter icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
361 <separator orientation="vertical"/>
362 <field name="number"/>
363 <field name="partner_id"/>
364 <field name="user_id" select="1" default="uid" widget="selection" string="Responsible">
365 <filter domain="[('user_id','=',uid)]" help="Responsible" icon="terp-partner" separator="1"/>
367 <field name="origin"/>
368 <field name="amount_total"/>
371 <group col="10" colspan="4">
372 <field name="journal_id" widget="selection" select='1'/>
373 <field name="period_id" select='1'/>
376 <group expand="0" string="Group By...">
377 <filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
378 <filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
379 <separator orientation="vertical"/>
380 <filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
381 <filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
382 <filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
383 <separator orientation="vertical"/>
384 <filter string="Invoice Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_invoice'}"/>
385 <filter string="Due Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_due'}"/>
391 <record id="action_invoice_tree" model="ir.actions.act_window">
392 <field name="name">Invoices</field>
393 <field name="res_model">account.invoice</field>
394 <field name="view_type">form</field>
395 <field name="view_mode">tree,form,calendar,graph</field>
396 <field name="view_id" ref="invoice_tree"/>
397 <field name="context">{'type':'out_invoice'}</field>
398 <field name="search_view_id" ref="view_account_invoice_filter"/>
401 <record id="action_invoice_tree_pending_invoice" model="ir.actions.act_window">
402 <field name="name">Pending Invoice</field>
403 <field name="res_model">account.invoice</field>
404 <field name="view_type">form</field>
405 <field name="view_mode">tree,form,calendar,graph</field>
406 <field name="view_id" ref="invoice_tree"/>
407 <field name="context">{'type':'out_invoice'}</field>
408 <field name="domain">[('state','=','draft')]</field>
409 <!-- <field name="search_view_id" ref="view_account_invoice_filter"/>-->
412 <record id="action_invoice_tree_view1" model="ir.actions.act_window.view">
413 <field eval="1" name="sequence"/>
414 <field name="view_mode">tree</field>
415 <field name="act_window_id" ref="action_invoice_tree"/>
418 <record id="action_invoice_tree_view2" model="ir.actions.act_window.view">
419 <field eval="2" name="sequence"/>
420 <field name="view_mode">form</field>
421 <field name="view_id" ref="invoice_form"/>
422 <field name="act_window_id" ref="action_invoice_tree"/>
424 <!-- <menuitem name="Invoices" id="menu_finance_invoice" parent="account.menu_finance" sequence="2"/>-->
426 <record id="action_invoice_tree1" model="ir.actions.act_window">
427 <field name="name">Customer Invoices</field>
428 <field name="res_model">account.invoice</field>
429 <field name="view_type">form</field>
430 <field name="view_mode">tree,form,calendar,graph</field>
431 <field eval="False" name="view_id"/>
432 <field name="domain">[('type','=','out_invoice')]</field>
433 <field name="context">{'type':'out_invoice'}</field>
434 <field name="search_view_id" ref="view_account_invoice_filter"/>
435 <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>
438 <record id="action_invoice_tree1_view1" model="ir.actions.act_window.view">
439 <field eval="1" name="sequence"/>
440 <field name="view_mode">tree</field>
441 <field name="act_window_id" ref="action_invoice_tree1"/>
444 <record id="action_invoice_tree1_view2" model="ir.actions.act_window.view">
445 <field eval="2" name="sequence"/>
446 <field name="view_mode">form</field>
447 <field name="view_id" ref="invoice_form"/>
448 <field name="act_window_id" ref="action_invoice_tree1"/>
450 <menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="menu_finance_receivables"/>
452 <record id="action_invoice_tree2" model="ir.actions.act_window">
453 <field name="name">Vendor Invoices</field>
454 <field name="res_model">account.invoice</field>
455 <field name="view_type">form</field>
456 <field name="view_mode">tree,form,calendar,graph</field>
457 <field eval="False" name="view_id"/>
458 <field name="domain">[('type','=','in_invoice')]</field>
459 <field name="context">{'type':'in_invoice'}</field>
460 <field name="search_view_id" ref="view_account_invoice_filter"/>
461 <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>
463 <menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="menu_finance_payables"/>
465 <record id="action_invoice_tree3" model="ir.actions.act_window">
466 <field name="name">Customer Refunds</field>
467 <field name="res_model">account.invoice</field>
468 <field name="view_type">form</field>
469 <field name="view_mode">tree,form,calendar,graph</field>
470 <field eval="False" name="view_id"/>
471 <field name="domain">[('type','=','out_refund')]</field>
472 <field name="context">{'type':'out_refund'}</field>
473 <field name="search_view_id" ref="view_account_invoice_filter"/>
474 <field name="help">A customer refund is a credit note to your customer that cancel invoice or a part of it.</field>
477 <record id="action_invoice_tree3_view1" model="ir.actions.act_window.view">
478 <field eval="1" name="sequence"/>
479 <field name="view_mode">tree</field>
480 <field name="act_window_id" ref="action_invoice_tree3"/>
483 <record id="action_invoice_tree3_view2" model="ir.actions.act_window.view">
484 <field eval="2" name="sequence"/>
485 <field name="view_mode">form</field>
486 <field name="view_id" ref="invoice_form"/>
487 <field name="act_window_id" ref="action_invoice_tree3"/>
489 <menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="menu_finance_receivables"/>
491 <record id="action_invoice_tree4" model="ir.actions.act_window">
492 <field name="name">Vendor Refunds</field>
493 <field name="res_model">account.invoice</field>
494 <field name="view_type">form</field>
495 <field name="view_mode">tree,form,calendar,graph</field>
496 <field eval="False" name="view_id"/>
497 <field name="domain">[('type','=','in_refund')]</field>
498 <field name="context">{'type':'in_refund'}</field>
499 <field name="search_view_id" ref="view_account_invoice_filter"/>
500 <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>
502 <menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
504 <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"/>
506 <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"/>
508 <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"/>
511 domain="[('partner_id', '=', partner_id), ('account_id.reconcile', '=', True)]"
512 context="{'search_default_unreconciled':True}"
513 id="act_account_invoice_account_move_unreconciled"
514 name="Items to Reconcile"
515 res_model="account.move.line"
516 src_model="account.invoice"/>
519 domain="[('move_id', '=', move_id)]"
520 id="act_account_invoice_account_move_invoice_link"
522 res_model="account.move.line"
523 src_model="account.invoice"/>